From cbceb465c088bdf32605b0c166b793d028639dc4 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Sun, 24 Sep 2023 19:28:06 +0400 Subject: [PATCH 01/54] feat(3.0.0): AsyncAPI --- .../com/asyncapi/v3/ExtendableObject.java | 43 +++++++ .../com/asyncapi/v3/_0_0/model/AsyncAPI.java | 108 ++++++++++++++++++ .../v3/_0_0/model/channel/ChannelItem.java | 4 + .../v3/_0_0/model/component/Components.java | 4 + .../com/asyncapi/v3/_0_0/model/info/Info.java | 4 + .../asyncapi/v3/_0_0/model/server/Server.java | 4 + 6 files changed, 167 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/ExtendableObject.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/ChannelItem.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/component/Components.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Info.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/Server.java diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/ExtendableObject.java b/asyncapi-core/src/main/java/com/asyncapi/v3/ExtendableObject.java new file mode 100644 index 00000000..23f75dc5 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/ExtendableObject.java @@ -0,0 +1,43 @@ +package com.asyncapi.v3; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.jetbrains.annotations.Nullable; + +import java.util.HashMap; +import java.util.Map; +import java.util.regex.Pattern; + +@Data +@NoArgsConstructor +@AllArgsConstructor +@JsonIgnoreProperties({"extensionFields"}) +public class ExtendableObject { + + private static final Pattern extensionPropertyNamePattern = Pattern.compile("^x-[\\w\\d\\-\\_]+$"); + + /** + * Extension fields in the form x-extension-field-name for the exposed API. + */ + @Nullable + @JsonAnyGetter + protected Map extensionFields; + + @JsonAnySetter + protected final void readExtensionProperty(String name, Object value) { + if (extensionPropertyNamePattern.matcher(name).matches()) { + if (extensionFields == null) { + extensionFields = new HashMap<>(); + } + + extensionFields.put(name, value); + } else { + throw new IllegalArgumentException(String.format("\"%s\" is not valid extension property", name)); + } + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java new file mode 100644 index 00000000..a2aabafe --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java @@ -0,0 +1,108 @@ +package com.asyncapi.v3._0_0.model; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3._0_0.model.channel.ChannelItem; +import com.asyncapi.v3._0_0.model.component.Components; +import com.asyncapi.v3._0_0.model.info.Info; +import com.asyncapi.v3._0_0.model.server.Server; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.HashMap; +import java.util.Map; + +/** + * This is the root document object for the API specification. + * It combines resource listing and API declaration together into one document. + * + * @version 3.0.0 + * @see AsyncAPI + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AsyncAPI extends ExtendableObject { + + /** + * Required. + *

+ * Specifies the AsyncAPI Specification version being used. + * It can be used by tooling Specifications and clients to interpret the version. + * The structure shall be major.minor.patch, where patch versions must be compatible + * with the existing major.minor tooling. + *

+ * Typically patch versions will be introduced to address errors in the documentation, + * and tooling should typically be compatible with the corresponding major.minor (1.0.*). + * Patch versions will correspond to patches of this document. + */ + @NotNull + @Builder.Default + private final String asyncapi = "3.0.0"; + + /** + * Identifier of the application the AsyncAPI document is defining. + *

+ * This field represents a unique universal identifier of the application the AsyncAPI document is defining. + * It must conform to the URI format, according to RFC3986. + *

+ * It is RECOMMENDED to use a URN to globally and uniquely identify the application during long periods of time, + * even after it becomes unavailable or ceases to exist. + */ + @Nullable + private String id; + + /** + * A string representing the default content type to use when encoding/decoding a message's payload. + * The value MUST be a specific media type (e.g. application/json). + * This value MUST be used by schema parsers when the contentType property is omitted. + *

+ * In case a message can't be encoded/decoded using this value, schema parsers MUST use their default content type. + */ + @Nullable + private String defaultContentType; + + /** + * Required. + *

+ * Provides metadata about the API. The metadata can be used by the clients if needed. + */ + @NotNull + @Builder.Default + private Info info = new Info(); + + /** + * Provides connection details of servers. + */ + @Nullable + private Map servers; + + /** + * The available channels and messages for the API. + *

+ * Holds the relative paths to the individual channel and their operations. Channel paths are relative to servers. + *

+ * Channels are also known as "topics", "routing keys", "event types" or "paths". + */ + @Nullable + @Builder.Default + private Map channels = new HashMap<>(); + + /** + * The available operations for the API. + */ + @Nullable + @Builder.Default + private Map operations = new HashMap<>(); + + /** + * An element to hold various schemas for the specification. + */ + @Nullable + private Components components; + +} + diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/ChannelItem.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/ChannelItem.java new file mode 100644 index 00000000..ba1177d0 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/ChannelItem.java @@ -0,0 +1,4 @@ +package com.asyncapi.v3._0_0.model.channel; + +public class ChannelItem { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/component/Components.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/component/Components.java new file mode 100644 index 00000000..17bd82a8 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/component/Components.java @@ -0,0 +1,4 @@ +package com.asyncapi.v3._0_0.model.component; + +public class Components { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Info.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Info.java new file mode 100644 index 00000000..5eb9e2fc --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Info.java @@ -0,0 +1,4 @@ +package com.asyncapi.v3._0_0.model.info; + +public class Info { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/Server.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/Server.java new file mode 100644 index 00000000..aae42ced --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/Server.java @@ -0,0 +1,4 @@ +package com.asyncapi.v3._0_0.model.server; + +public class Server { +} From 6700e205190c7eff5b42b854f630f864fc887191 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Sun, 24 Sep 2023 19:38:17 +0400 Subject: [PATCH 02/54] feat(3.0.0): Contact --- .../asyncapi/v3/_0_0/model/info/Contact.java | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Contact.java diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Contact.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Contact.java new file mode 100644 index 00000000..ec6fd3c6 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Contact.java @@ -0,0 +1,39 @@ +package com.asyncapi.v3._0_0.model.info; + +import com.asyncapi.v3.ExtendableObject; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Contact information for the exposed API. + * + * @version 3.0.0 + * @see Contact + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class Contact extends ExtendableObject { + + /** + * The identifying name of the contact person/organization. + */ + @Nullable + private String name; + + /** + * The URL pointing to the contact information. MUST be in the format of a URL. + */ + @Nullable + private String url; + + /** + * The email address of the contact person/organization. MUST be in the format of an email address. + */ + @Nullable + private String email; + +} From 7c25d5b6e483bf71f1ec950c8856f8276613b14b Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Sun, 24 Sep 2023 19:41:26 +0400 Subject: [PATCH 03/54] feat(3.0.0): Licence --- .../asyncapi/v3/_0_0/model/info/License.java | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/License.java diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/License.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/License.java new file mode 100644 index 00000000..a8737428 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/License.java @@ -0,0 +1,35 @@ +package com.asyncapi.v3._0_0.model.info; + +import com.asyncapi.v3.ExtendableObject; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * License information for the exposed API. + * + * @version 3.0.0 + * @see License + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class License extends ExtendableObject { + + /** + * Required. The license name used for the API. + */ + @NotNull + @Builder.Default + private String name = ""; + + /** + * A URL to the license used for the API. MUST be in the format of a URL. + */ + @Nullable + private String url; + +} From faaed80c8110a04700977689036c64dc5beeb02a Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Sun, 24 Sep 2023 19:44:10 +0400 Subject: [PATCH 04/54] feat(3.0.0): ExternalDocumentation --- .../v3/_0_0/model/ExternalDocumentation.java | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/ExternalDocumentation.java diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/ExternalDocumentation.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/ExternalDocumentation.java new file mode 100644 index 00000000..5dc4595e --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/ExternalDocumentation.java @@ -0,0 +1,37 @@ +package com.asyncapi.v3._0_0.model; + +import com.asyncapi.v3.ExtendableObject; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * Allows referencing an external resource for extended documentation. + * + * @version 3.0.0 + * @see ExternalDocumentation + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class ExternalDocumentation extends ExtendableObject { + + /** + * A short description of the target documentation. CommonMark syntax can be used for rich text representation. + */ + @Nullable + private String description; + + /** + * Required. + *

+ * The URL for the target documentation. Value MUST be in the format of a URL. + */ + @NotNull + @Builder.Default + private String url = ""; + +} From ec8919437a32c849dd00c0fd795407e86e717d24 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Sun, 24 Sep 2023 20:05:32 +0400 Subject: [PATCH 05/54] feat(3.0.0): Tag --- .../main/java/com/asyncapi/v3/Reference.java | 38 ++++++++++++ .../ExternalDocumentationDeserializer.java | 23 +++++++ .../java/com/asyncapi/v3/_0_0/model/Tag.java | 50 +++++++++++++++ .../ReferenceOrObjectDeserializer.java | 61 +++++++++++++++++++ 4 files changed, 172 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/Reference.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/ExternalDocumentationDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/Tag.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/jackson/ReferenceOrObjectDeserializer.java diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/Reference.java b/asyncapi-core/src/main/java/com/asyncapi/v3/Reference.java new file mode 100644 index 00000000..bd4b78c7 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/Reference.java @@ -0,0 +1,38 @@ +package com.asyncapi.v3; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.jetbrains.annotations.NotNull; + +/** + * A simple object to allow referencing other components in the specification, internally and externally. + *

+ * The Reference Object is defined by JSON Reference and follows the same structure, behavior and rules. + * A JSON Reference SHALL only be used to refer to a schema that is formatted in either JSON or YAML. + * In the case of a YAML-formatted Schema, the JSON Reference SHALL be applied to the JSON representation of + * that schema. The JSON representation SHALL be made by applying the conversion described here. + *

+ * For this specification, reference resolution is done as defined by the JSON Reference specification and not by + * the JSON Schema specification. + * + * @version 3.0.0 + * @see Reference + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Reference { + + /** + * Required. + *

+ * The reference string. + */ + @NotNull + @JsonProperty(value = "$ref") + private String ref = ""; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/ExternalDocumentationDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/ExternalDocumentationDeserializer.java new file mode 100644 index 00000000..b09ac314 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/ExternalDocumentationDeserializer.java @@ -0,0 +1,23 @@ +package com.asyncapi.v3._0_0.jackson.model; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.asyncapi.v3.jackson.ReferenceOrObjectDeserializer; + +/** + * Deserializes external documentation. + * + * @author Pavel Bodiachevskii + */ +public class ExternalDocumentationDeserializer extends ReferenceOrObjectDeserializer { + + @Override + public Class objectTypeClass() { + return ExternalDocumentation.class; + } + + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/Tag.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/Tag.java new file mode 100644 index 00000000..3ae2df83 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/Tag.java @@ -0,0 +1,50 @@ +package com.asyncapi.v3._0_0.model; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.jackson.model.ExternalDocumentationDeserializer; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * Allows adding meta data to a single tag. + * + * @version 3.0.0 + * @see Tag + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class Tag extends ExtendableObject { + + /** + * Required. The name of the tag. + */ + @NotNull + @Builder.Default + private String name = ""; + + /** + * A short description for the tag. CommonMark syntax can be used for rich text representation. + */ + @Nullable + private String description; + + /** + * Additional external documentation for this tag. + * MUST BE: + *

+ */ + @Nullable + @JsonDeserialize(using = ExternalDocumentationDeserializer.class) + private Object externalDocs; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/ReferenceOrObjectDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/ReferenceOrObjectDeserializer.java new file mode 100644 index 00000000..b9b34882 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/ReferenceOrObjectDeserializer.java @@ -0,0 +1,61 @@ +package com.asyncapi.v3.jackson; + +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException; + +import java.io.IOException; + +public abstract class ReferenceOrObjectDeserializer extends JsonDeserializer { + + abstract public Class objectTypeClass(); + + abstract public Class referenceClass(); + + @Override + public Object deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException { + ObjectCodec objectCodec = p.getCodec(); + JsonNode node = objectCodec.readTree(p); + + /* + Problem: + Both, Reference class and Schema class have $ref field. + So, this is only reason why I receive next exception: + "com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: + Unrecognized field "title" (class com.asyncapi.v2._6_0.model.Reference), + not marked as ignorable (one known property: "$ref"])" + in case when Schema contains $ref. + Solution: + Try to deserialize reference. In case of exception, try to deserialize it as given ObjectType. In case of + one more exception, throw it. + TODO: Think how to improve. + */ + try { + return chooseKnownPojo(node, objectCodec); + } catch (UnrecognizedPropertyException unrecognizedPropertyException) { + return readAsObject(node, objectCodec); + } + } + + private Object chooseKnownPojo(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + JsonNode ref = jsonNode.get("$ref"); + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + if (ref != null) { + return jsonParser.readValueAs(referenceClass()); + } else { + return jsonParser.readValueAs(objectTypeClass()); + } + } + } + + private Object readAsObject(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + return jsonParser.readValueAs(objectTypeClass()); + } + } + +} From cb01541e1b5b24df1c818b56f5d17d99360b9c85 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Sun, 24 Sep 2023 20:11:25 +0400 Subject: [PATCH 06/54] feat(3.0.0): Info --- .../_0_0/jackson/model/TagsDeserializer.java | 24 ++++ .../com/asyncapi/v3/_0_0/model/info/Info.java | 105 +++++++++++++++++- ...ListOfReferencesOrObjectsDeserializer.java | 51 +++++++++ 3 files changed, 179 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/TagsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/jackson/ListOfReferencesOrObjectsDeserializer.java diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/TagsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/TagsDeserializer.java new file mode 100644 index 00000000..71e39397 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/TagsDeserializer.java @@ -0,0 +1,24 @@ +package com.asyncapi.v3._0_0.jackson.model; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.Tag; +import com.asyncapi.v3.jackson.ListOfReferencesOrObjectsDeserializer; + +/** + * Deserializes tags. + * + * @author Pavel Bodiachevskii + */ +public class TagsDeserializer extends ListOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Tag.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Info.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Info.java index 5eb9e2fc..ed8d7b4e 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Info.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/info/Info.java @@ -1,4 +1,107 @@ package com.asyncapi.v3._0_0.model.info; -public class Info { +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.jackson.model.ExternalDocumentationDeserializer; +import com.asyncapi.v3._0_0.jackson.model.TagsDeserializer; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.asyncapi.v3._0_0.model.Tag; +import com.asyncapi.v3.ExtendableObject; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * The object provides metadata about the API. The metadata can be used by the clients if needed. + * + * @version 3.0.0 + * @see Info + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class Info extends ExtendableObject { + + /** + * Required. + *

+ * The title of the application. + */ + @NotNull + @JsonProperty + @Builder.Default + private String title = ""; + + /** + * Required. + *

+ * Provides the version of the application API (not to be confused with the specification version). + */ + @NotNull + @JsonProperty + @Builder.Default + private String version = ""; + + /** + * A short description of the application. CommonMark syntax can be used for rich text representation. + */ + @Nullable + @JsonProperty + private String description; + + /** + * A URL to the Terms of Service for the API. MUST be in the format of a URL. + */ + @Nullable + @JsonProperty + private String termsOfService; + + /** + * The contact information for the exposed API. + */ + @Nullable + @JsonProperty + private Contact contact; + + /** + * The license information for the exposed API. + */ + @Nullable + @JsonProperty + private License license; + + /** + * A list of tags for application API documentation control. Tags can be used for logical grouping of applications. + *

+ * MUST BE: + *

    + *
  • {@link Tag}
  • + *
  • {@link Reference}
  • + *
+ */ + @Nullable + @JsonProperty + @JsonDeserialize(using = TagsDeserializer.class) + private List tags; + + /** + * Additional external documentation of the exposed API. + *

+ * MUST BE: + *

    + *
  • {@link ExternalDocumentation}
  • + *
  • {@link Reference}
  • + *
+ */ + @Nullable + @JsonProperty + @JsonDeserialize(using = ExternalDocumentationDeserializer.class) + private Object externalDocs; + } diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/ListOfReferencesOrObjectsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/ListOfReferencesOrObjectsDeserializer.java new file mode 100644 index 00000000..e4212093 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/ListOfReferencesOrObjectsDeserializer.java @@ -0,0 +1,51 @@ +package com.asyncapi.v3.jackson; + +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; +import com.fasterxml.jackson.databind.JsonNode; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +public abstract class ListOfReferencesOrObjectsDeserializer extends JsonDeserializer> { + + abstract public Class objectTypeClass(); + + abstract public Class referenceClass(); + + @Override + public List deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException { + ObjectCodec objectCodec = p.getCodec(); + JsonNode node = objectCodec.readTree(p); + + List traits = new ArrayList<>(); + + node.forEach( + traitsValue -> { + try { + traits.add(chooseKnownPojo(traitsValue, objectCodec)); + } catch (IOException e) { + e.printStackTrace(); + } + } + ); + + return traits; + } + + private Object chooseKnownPojo(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + JsonNode ref = jsonNode.get("$ref"); + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + if (ref != null) { + return jsonParser.readValueAs(referenceClass()); + } else { + return jsonParser.readValueAs(objectTypeClass()); + } + } + } + +} From e4fa43d4b82d2a00c348cb5c238304b11cd2395a Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Sun, 24 Sep 2023 20:42:04 +0400 Subject: [PATCH 07/54] feat(3.0.0): ExternalDocumentation tests --- .../kotlin/com/asyncapi/v3/ClasspathUtils.kt | 14 ++++ .../test/kotlin/com/asyncapi/v3/SerDeTest.kt | 84 +++++++++++++++++++ .../_0_0/model/ExternalDocumentationTest.kt | 25 ++++++ .../externalDocumentation - extended.json | 9 ++ ...ernalDocumentation - wrongly extended.json | 10 +++ .../v3/3.0.0/model/externalDocumentation.json | 4 + 6 files changed, 146 insertions(+) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/ClasspathUtils.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/SerDeTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/ExternalDocumentationTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation.json diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/ClasspathUtils.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/ClasspathUtils.kt new file mode 100644 index 00000000..aef776a1 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/ClasspathUtils.kt @@ -0,0 +1,14 @@ +package com.asyncapi.v3 + +/** + * @author Pavel Bodiachevskii + */ +object ClasspathUtils { + + fun readAsString(resourceName: String): String { + return ClasspathUtils::class.java + .getResource(resourceName) + .readText(charset = Charsets.UTF_8) + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/SerDeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/SerDeTest.kt new file mode 100644 index 00000000..d33c77e6 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/SerDeTest.kt @@ -0,0 +1,84 @@ +package com.asyncapi.v3 + +import com.fasterxml.jackson.databind.JsonMappingException +import com.fasterxml.jackson.databind.ObjectMapper +import org.junit.jupiter.api.Assertions +import org.junit.jupiter.api.DisplayName +import org.junit.jupiter.api.Test + +abstract class SerDeTest { + + protected val objectMapper = ObjectMapper() + + protected abstract fun objectClass(): Class + + protected abstract fun baseObjectJson(): String + + protected abstract fun extendedObjectJson(): String + + protected abstract fun wronglyExtendedObjectJson(): String + + @Test + @DisplayName("Compare hand crafted object with parsed json") + fun compareObjectWithParsedJson() { + val model = ClasspathUtils.readAsString(baseObjectJson()) + + Assertions.assertEquals( + objectMapper.readValue(model, objectClass()), + build() + ) + } + + @Test + @DisplayName("Compare hand crafted extended object with parsed json") + fun compareExtendedObjectWithParsedJson() { + val model = objectMapper.readValue(ClasspathUtils.readAsString(extendedObjectJson()), objectClass()) + + Assertions.assertEquals(0, (model as ExtendableObject).extensionFields!!["x-number"]) + Assertions.assertEquals("", (model as ExtendableObject).extensionFields!!["x-string"]) + Assertions.assertEquals( + mapOf(Pair("property", emptyMap())), + (model as ExtendableObject).extensionFields!!["x-object"] + ) + Assertions.assertEquals(model, buildExtended()) + } + + @Test + @DisplayName("Compare hand crafted extended object with json") + fun compareExtendedObjectWithJson() { + val model = ClasspathUtils.readAsString(extendedObjectJson()) + + Assertions.assertEquals( + model, + objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(buildExtended()) + ) + } + + @Test + @DisplayName("Read wrongly extended object") + fun readWronglyExtendedObject() { + val model = ClasspathUtils.readAsString(wronglyExtendedObjectJson()) + + val exception = Assertions.assertThrows(JsonMappingException::class.java) { + objectMapper.readValue(model, objectClass()) + } + Assertions.assertEquals( + "\"ext-number\" is not valid extension property (through reference chain: ${objectClass().name}[\"ext-number\"])", + exception.message + ) + } + + abstract fun build(): ExtendableObject + + fun buildExtended(): ExtendableObject { + val `object` = build() + `object`.extensionFields = mapOf( + Pair("x-number", 0), + Pair("x-string", ""), + Pair("x-object", mapOf(Pair("property", emptyMap()))), + ) + + return `object` + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/ExternalDocumentationTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/ExternalDocumentationTest.kt new file mode 100644 index 00000000..2df6be6f --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/ExternalDocumentationTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3._0_0.model + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class ExternalDocumentationTest: SerDeTest() { + + override fun objectClass() = ExternalDocumentation::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/externalDocumentation.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/externalDocumentation - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/externalDocumentation - wrongly extended.json" + + override fun build(): ExternalDocumentation { + return ExternalDocumentation( + "Find more info here", + "https://example.com" + ) + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation - extended.json new file mode 100644 index 00000000..0183a85a --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation - extended.json @@ -0,0 +1,9 @@ +{ + "description" : "Find more info here", + "url" : "https://example.com", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation - wrongly extended.json new file mode 100644 index 00000000..48a7ffed --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "description": "Find more info here", + "url": "https://example.com", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation.json new file mode 100644 index 00000000..d41602e3 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/externalDocumentation.json @@ -0,0 +1,4 @@ +{ + "description": "Find more info here", + "url": "https://example.com" +} From b44f5f043a91d19c0b3a768cedeebd37117b67ea Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Sun, 24 Sep 2023 20:42:15 +0400 Subject: [PATCH 08/54] feat(3.0.0): Tag tests --- .../com/asyncapi/v3/_0_0/model/TagTest.kt | 50 +++++++++++++++++++ .../json/v3/3.0.0/model/tag - extended.json | 13 +++++ .../3.0.0/model/tag - wrongly extended.json | 14 ++++++ ... reference to externalDocs - extended.json | 12 +++++ ...ce to externalDocs - wrongly extended.json | 13 +++++ .../tag with reference to externalDocs.json | 7 +++ .../resources/json/v3/3.0.0/model/tag.json | 8 +++ 7 files changed, 117 insertions(+) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/TagTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag.json diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/TagTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/TagTest.kt new file mode 100644 index 00000000..e18a3ca9 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/TagTest.kt @@ -0,0 +1,50 @@ +package com.asyncapi.v3._0_0.model + +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class TagTestWithReferenceToExternalDocs: SerDeTest() { + + override fun objectClass() = Tag::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/tag with reference to externalDocs.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/tag with reference to externalDocs - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/tag with reference to externalDocs - wrongly extended.json" + + override fun build(): Tag { + return Tag( + "user", + "User-related messages", + Reference("#/components/external-doc") + ) + } + +} + +/** + * @author Pavel Bodiachevskii + */ +class TagTest: SerDeTest() { + + override fun objectClass() = Tag::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/tag.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/tag - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/tag - wrongly extended.json" + + override fun build(): Tag { + return Tag( + "user", + "User-related messages", + ExternalDocumentationTest().build() + ) + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag - extended.json new file mode 100644 index 00000000..d41b395e --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag - extended.json @@ -0,0 +1,13 @@ +{ + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag - wrongly extended.json new file mode 100644 index 00000000..7a65e27e --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag - wrongly extended.json @@ -0,0 +1,14 @@ +{ + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs - extended.json new file mode 100644 index 00000000..1d10e2f8 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs - extended.json @@ -0,0 +1,12 @@ +{ + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs - wrongly extended.json new file mode 100644 index 00000000..79e4f263 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs - wrongly extended.json @@ -0,0 +1,13 @@ +{ + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs.json new file mode 100644 index 00000000..f9ad85f8 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag with reference to externalDocs.json @@ -0,0 +1,7 @@ +{ + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag.json new file mode 100644 index 00000000..aa06e030 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/tag.json @@ -0,0 +1,8 @@ +{ + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } +} From e74a2d045d0aba472383ad1fe8ef67a75bd04e08 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 00:37:53 +0400 Subject: [PATCH 09/54] feat(3.0.0): Reference tests --- .../asyncapi/v3/_0_0/model/ReferenceTest.kt | 29 +++++++++++++++++++ .../json/v3/3.0.0/model/reference.json | 3 ++ 2 files changed, 32 insertions(+) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/ReferenceTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/reference.json diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/ReferenceTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/ReferenceTest.kt new file mode 100644 index 00000000..9ebf9892 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/ReferenceTest.kt @@ -0,0 +1,29 @@ +package com.asyncapi.v3._0_0.model + +import com.asyncapi.v3.ClasspathUtils +import com.asyncapi.v3.Reference +import com.fasterxml.jackson.databind.ObjectMapper +import org.junit.jupiter.api.Assertions +import org.junit.jupiter.api.DisplayName +import org.junit.jupiter.api.Test + +class ReferenceTest { + + private val objectMapper = ObjectMapper() + + @Test + @DisplayName("Compare hand crafted model with parsed json") + fun compareModelWithParsedJson() { + val model = ClasspathUtils.readAsString("/json/v3/3.0.0/model/reference.json") + + Assertions.assertEquals( + objectMapper.readValue(model, Reference::class.java), + build() + ) + } + + fun build(): Reference { + return Reference("#/components/schemas/user") + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/reference.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/reference.json new file mode 100644 index 00000000..cca746ac --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/reference.json @@ -0,0 +1,3 @@ +{ + "$ref": "#/components/schemas/user" +} \ No newline at end of file From 9e9cf960cd90737741a9bb71cf0baa344b621011 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 00:40:21 +0400 Subject: [PATCH 10/54] feat(3.0.0): Contact tests --- .../v3/_0_0/model/info/ContactTest.kt | 26 +++++++++++++++++++ .../3.0.0/model/info/contact - extended.json | 10 +++++++ .../info/contact - wrongly extended.json | 11 ++++++++ .../json/v3/3.0.0/model/info/contact.json | 5 ++++ 4 files changed, 52 insertions(+) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/ContactTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact.json diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/ContactTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/ContactTest.kt new file mode 100644 index 00000000..d9d9b017 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/ContactTest.kt @@ -0,0 +1,26 @@ +package com.asyncapi.v3._0_0.model.info + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class ContactTest: SerDeTest() { + + override fun objectClass() = Contact::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/info/contact.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/info/contact - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/info/contact - wrongly extended.json" + + override fun build(): Contact { + return Contact( + "AsyncApi", + "https://www.asyncapi.com", + "java@asyncapi.com" + ) + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact - extended.json new file mode 100644 index 00000000..74154899 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact - extended.json @@ -0,0 +1,10 @@ +{ + "name" : "AsyncApi", + "url" : "https://www.asyncapi.com", + "email" : "java@asyncapi.com", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact - wrongly extended.json new file mode 100644 index 00000000..bf8dcedb --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact - wrongly extended.json @@ -0,0 +1,11 @@ +{ + "name": "AsyncApi", + "url": "https://www.asyncapi.com", + "email": "java@asyncapi.com", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact.json new file mode 100644 index 00000000..31cd246a --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/contact.json @@ -0,0 +1,5 @@ +{ + "name": "AsyncApi", + "url": "https://www.asyncapi.com", + "email": "java@asyncapi.com" +} From 12f812e1adfbeadc96d8bd7c6068c209ad73bf22 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 00:42:16 +0400 Subject: [PATCH 11/54] feat(3.0.0): License tests --- .../v3/_0_0/model/info/LicenseTest.kt | 25 +++++++++++++++++++ .../3.0.0/model/info/license - extended.json | 9 +++++++ .../info/license - wrongly extended.json | 10 ++++++++ .../json/v3/3.0.0/model/info/license.json | 4 +++ 4 files changed, 48 insertions(+) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/LicenseTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license.json diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/LicenseTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/LicenseTest.kt new file mode 100644 index 00000000..a7a9537b --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/LicenseTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3._0_0.model.info + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class LicenseTest: SerDeTest() { + + override fun objectClass() = License::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/info/license.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/info/license - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/info/license - wrongly extended.json" + + override fun build(): License { + return License( + "Apache License 2.0", + "http://www.apache.org/licenses/" + ) + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license - extended.json new file mode 100644 index 00000000..95d3cd1e --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license - extended.json @@ -0,0 +1,9 @@ +{ + "name" : "Apache License 2.0", + "url" : "http://www.apache.org/licenses/", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license - wrongly extended.json new file mode 100644 index 00000000..a52ea20d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "name": "Apache License 2.0", + "url": "http://www.apache.org/licenses/", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license.json new file mode 100644 index 00000000..61436164 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/license.json @@ -0,0 +1,4 @@ +{ + "name": "Apache License 2.0", + "url": "http://www.apache.org/licenses/" +} From e7653479cb3633d555ae23e759fdd7e0dad0778d Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 01:00:44 +0400 Subject: [PATCH 12/54] feat(3.0.0): Info tests --- .../asyncapi/v3/_0_0/model/info/InfoTest.kt | 59 +++++++++++++++++++ .../v3/3.0.0/model/info/info - extended.json | 32 ++++++++++ .../model/info/info - wrongly extended.json | 21 +++++++ .../info/info with reference - extended.json | 26 ++++++++ ...nfo with reference - wrongly extended.json | 29 +++++++++ .../3.0.0/model/info/info with reference.json | 23 ++++++++ .../json/v3/3.0.0/model/info/info.json | 29 +++++++++ 7 files changed, 219 insertions(+) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/InfoTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info.json diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/InfoTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/InfoTest.kt new file mode 100644 index 00000000..9c2ccfbc --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/info/InfoTest.kt @@ -0,0 +1,59 @@ +package com.asyncapi.v3._0_0.model.info + +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3._0_0.model.ExternalDocumentationTest +import com.asyncapi.v3._0_0.model.TagTest + +/** + * @author Pavel Bodiachevskii + */ +class InfoTest: SerDeTest() { + + override fun objectClass() = Info::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/info/info.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/info/info - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/info/info - wrongly extended.json" + + override fun build(): Info { + return Info( + "AsyncApi sample", + "2.0", + "short description", + "https://www.asyncapi.com/about/", + ContactTest().build(), + LicenseTest().build(), + listOf(TagTest().build()), + ExternalDocumentationTest().build(), + ) + } + +} + +class InfoTestWithReferences: SerDeTest() { + + override fun objectClass() = Info::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/info/info with reference.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/info/info with reference - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/info/info with reference - wrongly extended.json" + + override fun build(): Info { + return Info( + "AsyncApi sample", + "2.0", + "short description", + "https://www.asyncapi.com/about/", + ContactTest().build(), + LicenseTest().build(), + listOf(Reference("#/components/schemas/tag")), + Reference("#/components/schemas/externalDoc"), + ) + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info - extended.json new file mode 100644 index 00000000..c430f171 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info - extended.json @@ -0,0 +1,32 @@ +{ + "title" : "AsyncApi sample", + "version" : "2.0", + "description" : "short description", + "termsOfService" : "https://www.asyncapi.com/about/", + "contact" : { + "name" : "AsyncApi", + "url" : "https://www.asyncapi.com", + "email" : "java@asyncapi.com" + }, + "license" : { + "name" : "Apache License 2.0", + "url" : "http://www.apache.org/licenses/" + }, + "tags" : [ { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info - wrongly extended.json new file mode 100644 index 00000000..b6dbd60b --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info - wrongly extended.json @@ -0,0 +1,21 @@ +{ + "title": "AsyncApi sample", + "version": "2.0", + "description": "short description", + "termsOfService": "https://www.asyncapi.com/about/", + "contact": { + "name": "AsyncApi", + "url": "https://www.asyncapi.com", + "email": "java@asyncapi.com" + }, + "license": { + "name": "Apache License 2.0", + "url": "http://www.apache.org/licenses/" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference - extended.json new file mode 100644 index 00000000..64ee7183 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference - extended.json @@ -0,0 +1,26 @@ +{ + "title" : "AsyncApi sample", + "version" : "2.0", + "description" : "short description", + "termsOfService" : "https://www.asyncapi.com/about/", + "contact" : { + "name" : "AsyncApi", + "url" : "https://www.asyncapi.com", + "email" : "java@asyncapi.com" + }, + "license" : { + "name" : "Apache License 2.0", + "url" : "http://www.apache.org/licenses/" + }, + "tags" : [ { + "$ref" : "#/components/schemas/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/schemas/externalDoc" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference - wrongly extended.json new file mode 100644 index 00000000..0ac2a117 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference - wrongly extended.json @@ -0,0 +1,29 @@ +{ + "title": "AsyncApi sample", + "version": "2.0", + "description": "short description", + "termsOfService": "https://www.asyncapi.com/about/", + "contact": { + "name": "AsyncApi", + "url": "https://www.asyncapi.com", + "email": "java@asyncapi.com" + }, + "license": { + "name": "Apache License 2.0", + "url": "http://www.apache.org/licenses/" + }, + "tags": [ + { + "$ref": "#/components/schemas/tag" + } + ], + "externalDocs": { + "$ref": "#/components/schemas/externalDoc" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference.json new file mode 100644 index 00000000..253ea5b8 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info with reference.json @@ -0,0 +1,23 @@ +{ + "title": "AsyncApi sample", + "version": "2.0", + "description": "short description", + "termsOfService": "https://www.asyncapi.com/about/", + "contact": { + "name": "AsyncApi", + "url": "https://www.asyncapi.com", + "email": "java@asyncapi.com" + }, + "license": { + "name": "Apache License 2.0", + "url": "http://www.apache.org/licenses/" + }, + "tags": [ + { + "$ref": "#/components/schemas/tag" + } + ], + "externalDocs": { + "$ref": "#/components/schemas/externalDoc" + } +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info.json new file mode 100644 index 00000000..8231edb9 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/info/info.json @@ -0,0 +1,29 @@ +{ + "title": "AsyncApi sample", + "version": "2.0", + "description": "short description", + "termsOfService": "https://www.asyncapi.com/about/", + "contact": { + "name": "AsyncApi", + "url": "https://www.asyncapi.com", + "email": "java@asyncapi.com" + }, + "license": { + "name": "Apache License 2.0", + "url": "http://www.apache.org/licenses/" + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + } + ], + "externalDocs": { + "description": "Find more info here", + "url": "https://example.com" + } +} From 685afecec8edd3070b719394bc9bf1b2f9d4c436 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 21:16:41 +0400 Subject: [PATCH 13/54] feat(3.0.0): ServerVariable --- .../v3/_0_0/model/server/ServerVariable.java | 50 +++++++++++++++++++ .../_0_0/model/server/ServerVariableTest.kt | 28 +++++++++++ .../server/serverVariable - extended.json | 11 ++++ .../serverVariable - wrongly extended.json | 18 +++++++ .../v3/3.0.0/model/server/serverVariable.json | 12 +++++ 5 files changed, 119 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/ServerVariable.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/server/ServerVariableTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/ServerVariable.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/ServerVariable.java new file mode 100644 index 00000000..9e20243f --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/ServerVariable.java @@ -0,0 +1,50 @@ +package com.asyncapi.v3._0_0.model.server; + +import com.asyncapi.v3.ExtendableObject; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * An object representing a Server Variable for server URL template substitution. + * + * @version 3.0.0 + * @see ServerVariable + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class ServerVariable extends ExtendableObject { + + /** + * An enumeration of string values to be used if the substitution options are from a limited set. + */ + @Nullable + @JsonProperty(value = "enum") + private List enumValues; + + /** + * The default value to use for substitution, and to send, if an alternate value is not supplied. + */ + @Nullable + @JsonProperty("default") + private String defaultValue; + + /** + * An optional description for the server variable. CommonMark syntax MAY be used for rich text representation. + */ + @Nullable + private String description; + + /** + * An array of examples of the server variable. + */ + @Nullable + private List examples; + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/server/ServerVariableTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/server/ServerVariableTest.kt new file mode 100644 index 00000000..9107078e --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/server/ServerVariableTest.kt @@ -0,0 +1,28 @@ +package com.asyncapi.v3._0_0.model.server + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class ServerVariableTest: SerDeTest() { + + override fun objectClass() = ServerVariable::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/server/serverVariable.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/server/serverVariable - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/server/serverVariable - wrongly extended.json" + + override fun build(): ServerVariable { + return ServerVariable.builder() + .enumValues(listOf("8883", "8884")) + .description("To which port connect") + .defaultValue("8883") + .examples(listOf("8883", "8884")) + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable - extended.json new file mode 100644 index 00000000..93416d9d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable - extended.json @@ -0,0 +1,11 @@ +{ + "description" : "To which port connect", + "examples" : [ "8883", "8884" ], + "enum" : [ "8883", "8884" ], + "default" : "8883", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable - wrongly extended.json new file mode 100644 index 00000000..16e70dab --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable - wrongly extended.json @@ -0,0 +1,18 @@ +{ + "enum": [ + "8883", + "8884" + ], + "default": "8883", + "description": "To which port connect", + "examples": [ + "8883", + "8884" + ], + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable.json new file mode 100644 index 00000000..84405441 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/serverVariable.json @@ -0,0 +1,12 @@ +{ + "enum": [ + "8883", + "8884" + ], + "default": "8883", + "description": "To which port connect", + "examples": [ + "8883", + "8884" + ] +} \ No newline at end of file From ca00f7c5bcce09df2ac66ad737f5ab129fbb7d7f Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 21:45:07 +0400 Subject: [PATCH 14/54] feat(3.0.0): ApiKeySecurityScheme --- .../security_scheme/ApiKeySecurityScheme.java | 43 +++++++ .../v3/security_scheme/SecurityScheme.java | 119 ++++++++++++++++++ .../ApiKeySecuritySchemeTest.kt | 25 ++++ .../v3/security_scheme/apiKey - extended.json | 10 ++ .../apiKey - wrongly extended.json | 11 ++ .../json/v3/security_scheme/apiKey.json | 5 + 6 files changed, 213 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/ApiKeySecurityScheme.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ApiKeySecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/ApiKeySecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/ApiKeySecurityScheme.java new file mode 100644 index 00000000..86a20335 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/ApiKeySecurityScheme.java @@ -0,0 +1,43 @@ +package com.asyncapi.v3.security_scheme; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * @version 2.6.0 + * @see SecurityScheme + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class ApiKeySecurityScheme extends SecurityScheme { + + /** + * REQUIRED. + *

+ * The location of the API key. + */ + @NotNull + private ApiKeyLocation in = ApiKeyLocation.USER; + + @Builder(builderMethodName = "apiKeyBuilder") + public ApiKeySecurityScheme(@Nullable String description, + @NotNull ApiKeyLocation in) { + super(Type.API_KEY, description); + this.in = in; + } + + public enum ApiKeyLocation { + + @JsonProperty("user") + USER, + @JsonProperty("password") + PASSWORD + + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java new file mode 100644 index 00000000..e86ba92f --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -0,0 +1,119 @@ +package com.asyncapi.v3.security_scheme; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.security_scheme.http.HttpApiKeySecurityScheme; +import com.asyncapi.v3.security_scheme.http.HttpSecurityScheme; +import com.asyncapi.v3.security_scheme.oauth2.OAuth2SecurityScheme; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonSubTypes; +import com.fasterxml.jackson.annotation.JsonTypeInfo; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * Defines a security scheme that can be used by the operations. Supported schemes are: + *

    + *
  • User/Password.
  • + *
  • API key (either as user or as password).
  • + *
  • X.509 certificate.
  • + *
  • End-to-end encryption (either symmetric or asymmetric).
  • + *
  • HTTP authentication.
  • + *
  • HTTP API key.
  • + *
  • OAuth2’s common flows (Implicit, Resource Owner Protected Credentials, Client Credentials and Authorization Code) as defined in RFC6749.
  • + *
  • OpenID Connect Discovery.
  • + *
  • SASL (Simple Authentication and Security Layer) as defined in RFC4422.
  • + *
+ * + * This object MAY be extended with Specification Extensions. + * + * @version 3.0.0 + * @see Security Scheme Object + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@JsonTypeInfo( + use = JsonTypeInfo.Id.NAME, + include = JsonTypeInfo.As.EXISTING_PROPERTY, + property = "type", + visible = true +) +@JsonSubTypes({ +// @JsonSubTypes.Type(value = SecurityScheme.class, name = "userPassword"), + @JsonSubTypes.Type(value = ApiKeySecurityScheme.class, name = "apiKey"), +// @JsonSubTypes.Type(value = SecurityScheme.class, name = "X509"), +// @JsonSubTypes.Type(value = SecurityScheme.class, name = "symmetricEncryption"), +// @JsonSubTypes.Type(value = SecurityScheme.class, name = "asymmetricEncryption"), +// @JsonSubTypes.Type(value = HttpApiKeySecurityScheme.class, name = "httpApiKey"), +// @JsonSubTypes.Type(value = HttpSecurityScheme.class, name = "http"), +// @JsonSubTypes.Type(value = OAuth2SecurityScheme.class, name = "oauth2"), +// @JsonSubTypes.Type(value = OpenIdConnectSecurityScheme.class, name = "openIdConnect"), +// @JsonSubTypes.Type(value = SecurityScheme.class, name = "plain"), +// @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha256"), +// @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha512"), +// @JsonSubTypes.Type(value = SecurityScheme.class, name = "gssapi"), +}) +@EqualsAndHashCode(callSuper = true) +public class SecurityScheme extends ExtendableObject { + + /** + * REQUIRED. + *

+ * The type of the security scheme. Valid values are: + *

    + *
  • userPassword
  • + *
  • apiKey
  • + *
  • X509
  • + *
  • symmetricEncryption
  • + *
  • asymmetricEncryption
  • + *
  • httpApiKey
  • + *
  • http
  • + *
  • oauth2
  • + *
  • openIdConnect
  • + *
+ */ + @NotNull + @Builder.Default + private Type type = Type.USER_PASSWORD; + + /** + * A short description for security scheme. CommonMark syntax MAY be used for rich text representation. + */ + @Nullable + private String description; + + public enum Type { + + @JsonProperty("userPassword") + USER_PASSWORD, + @JsonProperty("apiKey") + API_KEY, + @JsonProperty("X509") + X509, + @JsonProperty("symmetricEncryption") + SYMMETRIC_ENCRYPTION, + @JsonProperty("asymmetricEncryption") + ASYMMETRIC_ENCRYPTION, + @JsonProperty("httpApiKey") + HTTP_API_KEY, + @JsonProperty("http") + HTTP, + @JsonProperty("oauth2") + OAUTH2, + @JsonProperty("openIdConnect") + OPENID_CONNECT, + @JsonProperty("plain") + PLAIN, + @JsonProperty("scramSha256") + SCRAM_SHA256, + @JsonProperty("scramSha512") + SCRAM_SHA512, + @JsonProperty("gssapi") + GSSAPI + + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ApiKeySecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ApiKeySecuritySchemeTest.kt new file mode 100644 index 00000000..fc7aa22d --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ApiKeySecuritySchemeTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.security_scheme + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class ApiKeySecuritySchemeTest: SerDeTest() { + + override fun objectClass() = ApiKeySecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/apiKey.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/apiKey - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/apiKey - wrongly extended.json" + + override fun build(): SecurityScheme { + return ApiKeySecurityScheme.apiKeyBuilder() + .description("apiKey") + .`in`(ApiKeySecurityScheme.ApiKeyLocation.USER) + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey - extended.json new file mode 100644 index 00000000..a50ce65d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey - extended.json @@ -0,0 +1,10 @@ +{ + "type" : "apiKey", + "description" : "apiKey", + "in" : "user", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey - wrongly extended.json new file mode 100644 index 00000000..4833f8a5 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey - wrongly extended.json @@ -0,0 +1,11 @@ +{ + "type": "apiKey", + "description": "apiKey", + "in": "user", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey.json new file mode 100644 index 00000000..b5f91e04 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/apiKey.json @@ -0,0 +1,5 @@ +{ + "type": "apiKey", + "description": "apiKey", + "in": "user" +} \ No newline at end of file From 6accd4e08bde6fa1e557da802631e936ffe2ec1e Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 21:49:34 +0400 Subject: [PATCH 15/54] feat(3.0.0): OpenIdConnectSecurityScheme --- .../OpenIdConnectSecurityScheme.java | 43 +++++++++++++++++++ .../v3/security_scheme/SecurityScheme.java | 2 +- .../OpenIdConnectSecuritySchemeTest.kt | 26 +++++++++++ .../openIdConnect - extended.json | 11 +++++ .../openIdConnect - wrongly extended.json | 15 +++++++ .../v3/security_scheme/openIdConnect.json | 9 ++++ 6 files changed, 105 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/OpenIdConnectSecurityScheme.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/OpenIdConnectSecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/OpenIdConnectSecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/OpenIdConnectSecurityScheme.java new file mode 100644 index 00000000..ff0febc3 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/OpenIdConnectSecurityScheme.java @@ -0,0 +1,43 @@ +package com.asyncapi.v3.security_scheme; + +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * @version 2.6.0 + * @see SecurityScheme + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class OpenIdConnectSecurityScheme extends SecurityScheme { + + /** + * REQUIRED. + *

+ * OpenId Connect URL to discover OAuth2 configuration values. This MUST be in the form of a URL. + */ + @NotNull + private String openIdConnectUrl = ""; + + /** + * List of the needed scope names. + */ + @Nullable + private List scopes; + + @Builder(builderMethodName = "openIdBuilder") + public OpenIdConnectSecurityScheme(@Nullable String description, + @NotNull String openIdConnectUrl, + @Nullable List scopes) { + super(Type.OPENID_CONNECT, description); + this.openIdConnectUrl = openIdConnectUrl; + this.scopes = scopes; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index e86ba92f..c011f2dd 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -50,7 +50,7 @@ // @JsonSubTypes.Type(value = HttpApiKeySecurityScheme.class, name = "httpApiKey"), // @JsonSubTypes.Type(value = HttpSecurityScheme.class, name = "http"), // @JsonSubTypes.Type(value = OAuth2SecurityScheme.class, name = "oauth2"), -// @JsonSubTypes.Type(value = OpenIdConnectSecurityScheme.class, name = "openIdConnect"), + @JsonSubTypes.Type(value = OpenIdConnectSecurityScheme.class, name = "openIdConnect"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "plain"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha256"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha512"), diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/OpenIdConnectSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/OpenIdConnectSecuritySchemeTest.kt new file mode 100644 index 00000000..baf2ff56 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/OpenIdConnectSecuritySchemeTest.kt @@ -0,0 +1,26 @@ +package com.asyncapi.v3.security_scheme + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class OpenIdConnectSecuritySchemeTest: SerDeTest() { + + override fun objectClass() = OpenIdConnectSecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/openIdConnect.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/openIdConnect - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/openIdConnect - wrongly extended.json" + + override fun build(): SecurityScheme { + return OpenIdConnectSecurityScheme.openIdBuilder() + .description("openIdConnect") + .openIdConnectUrl("https://server.com/.well-known/openid-configuration") + .scopes(listOf("write:pets", "read:pets")) + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect - extended.json new file mode 100644 index 00000000..cfd5a756 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect - extended.json @@ -0,0 +1,11 @@ +{ + "type" : "openIdConnect", + "description" : "openIdConnect", + "openIdConnectUrl" : "https://server.com/.well-known/openid-configuration", + "scopes" : [ "write:pets", "read:pets" ], + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect - wrongly extended.json new file mode 100644 index 00000000..66338a6d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect - wrongly extended.json @@ -0,0 +1,15 @@ +{ + "type": "openIdConnect", + "description": "openIdConnect", + "openIdConnectUrl": "https://server.com/.well-known/openid-configuration", + "scopes": [ + "write:pets", + "read:pets" + ], + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect.json new file mode 100644 index 00000000..49747b8c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/openIdConnect.json @@ -0,0 +1,9 @@ +{ + "type": "openIdConnect", + "description": "openIdConnect", + "openIdConnectUrl": "https://server.com/.well-known/openid-configuration", + "scopes": [ + "write:pets", + "read:pets" + ] +} \ No newline at end of file From 21a9077a1e33606015ef2fa9a1cf2a916e897fe5 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 21:52:00 +0400 Subject: [PATCH 16/54] feat(3.0.0): userPassword security scheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../UserPasswordSecuritySchemeTest.kt | 25 +++++++++++++++++++ .../userPassword - extended.json | 9 +++++++ .../userPassword - wrongly extended.json | 10 ++++++++ .../json/v3/security_scheme/userPassword.json | 4 +++ 5 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/UserPasswordSecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index c011f2dd..7f699ca2 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -42,7 +42,7 @@ visible = true ) @JsonSubTypes({ -// @JsonSubTypes.Type(value = SecurityScheme.class, name = "userPassword"), + @JsonSubTypes.Type(value = SecurityScheme.class, name = "userPassword"), @JsonSubTypes.Type(value = ApiKeySecurityScheme.class, name = "apiKey"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "X509"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "symmetricEncryption"), diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/UserPasswordSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/UserPasswordSecuritySchemeTest.kt new file mode 100644 index 00000000..c7aa3980 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/UserPasswordSecuritySchemeTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.security_scheme + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class UserPasswordSecuritySchemeTest: SerDeTest() { + + override fun objectClass() = SecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/userPassword.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/userPassword - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/userPassword - wrongly extended.json" + + override fun build(): SecurityScheme { + return SecurityScheme.builder() + .type(SecurityScheme.Type.USER_PASSWORD) + .description("userPassword") + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword - extended.json new file mode 100644 index 00000000..721e5559 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword - extended.json @@ -0,0 +1,9 @@ +{ + "type" : "userPassword", + "description" : "userPassword", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword - wrongly extended.json new file mode 100644 index 00000000..e0d85aa5 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "type": "userPassword", + "description": "userPassword", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword.json new file mode 100644 index 00000000..4d9a3cc3 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/userPassword.json @@ -0,0 +1,4 @@ +{ + "type": "userPassword", + "description": "userPassword" +} \ No newline at end of file From 72dec6b4f583e89aa991dfc1a5658cd188aebc6e Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 21:53:19 +0400 Subject: [PATCH 17/54] feat(3.0.0): X509 security scheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../security_scheme/X509SecuritySchemeTest.kt | 25 +++++++++++++++++++ .../v3/security_scheme/X509 - extended.json | 9 +++++++ .../X509 - wrongly extended.json | 10 ++++++++ .../json/v3/security_scheme/X509.json | 4 +++ 5 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/X509SecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/X509 - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/X509 - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/X509.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index 7f699ca2..d3e42523 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -44,7 +44,7 @@ @JsonSubTypes({ @JsonSubTypes.Type(value = SecurityScheme.class, name = "userPassword"), @JsonSubTypes.Type(value = ApiKeySecurityScheme.class, name = "apiKey"), -// @JsonSubTypes.Type(value = SecurityScheme.class, name = "X509"), + @JsonSubTypes.Type(value = SecurityScheme.class, name = "X509"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "symmetricEncryption"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "asymmetricEncryption"), // @JsonSubTypes.Type(value = HttpApiKeySecurityScheme.class, name = "httpApiKey"), diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/X509SecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/X509SecuritySchemeTest.kt new file mode 100644 index 00000000..849ce42a --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/X509SecuritySchemeTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.security_scheme + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class X509SecuritySchemeTest: SerDeTest() { + + override fun objectClass() = SecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/X509.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/X509 - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/X509 - wrongly extended.json" + + override fun build(): SecurityScheme { + return SecurityScheme.builder() + .type(SecurityScheme.Type.X509) + .description("X509") + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/X509 - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/X509 - extended.json new file mode 100644 index 00000000..46699754 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/X509 - extended.json @@ -0,0 +1,9 @@ +{ + "type" : "X509", + "description" : "X509", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/X509 - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/X509 - wrongly extended.json new file mode 100644 index 00000000..42acde6f --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/X509 - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "type": "X509", + "description": "X509", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/X509.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/X509.json new file mode 100644 index 00000000..a2355018 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/X509.json @@ -0,0 +1,4 @@ +{ + "type": "X509", + "description": "X509" +} \ No newline at end of file From a333ee2f9edafd16b69931d36191713f6113130a Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 21:54:48 +0400 Subject: [PATCH 18/54] feat(3.0.0): symmetricEncryption security scheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../SymmetricEncryptionSecuritySchemeTest.kt | 25 +++++++++++++++++++ .../symmetricEncryption - extended.json | 9 +++++++ ...ymmetricEncryption - wrongly extended.json | 10 ++++++++ .../security_scheme/symmetricEncryption.json | 4 +++ 5 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/SymmetricEncryptionSecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index d3e42523..12d9278e 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -45,7 +45,7 @@ @JsonSubTypes.Type(value = SecurityScheme.class, name = "userPassword"), @JsonSubTypes.Type(value = ApiKeySecurityScheme.class, name = "apiKey"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "X509"), -// @JsonSubTypes.Type(value = SecurityScheme.class, name = "symmetricEncryption"), + @JsonSubTypes.Type(value = SecurityScheme.class, name = "symmetricEncryption"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "asymmetricEncryption"), // @JsonSubTypes.Type(value = HttpApiKeySecurityScheme.class, name = "httpApiKey"), // @JsonSubTypes.Type(value = HttpSecurityScheme.class, name = "http"), diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/SymmetricEncryptionSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/SymmetricEncryptionSecuritySchemeTest.kt new file mode 100644 index 00000000..4f6057da --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/SymmetricEncryptionSecuritySchemeTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.security_scheme + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class SymmetricEncryptionSecuritySchemeTest: SerDeTest() { + + override fun objectClass() = SecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/symmetricEncryption.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/symmetricEncryption - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/symmetricEncryption - wrongly extended.json" + + override fun build(): SecurityScheme { + return SecurityScheme.builder() + .type(SecurityScheme.Type.SYMMETRIC_ENCRYPTION) + .description("symmetricEncryption") + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption - extended.json new file mode 100644 index 00000000..d4915691 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption - extended.json @@ -0,0 +1,9 @@ +{ + "type" : "symmetricEncryption", + "description" : "symmetricEncryption", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption - wrongly extended.json new file mode 100644 index 00000000..81bb0e1c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "type": "symmetricEncryption", + "description": "symmetricEncryption", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption.json new file mode 100644 index 00000000..58aa4d19 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/symmetricEncryption.json @@ -0,0 +1,4 @@ +{ + "type": "symmetricEncryption", + "description": "symmetricEncryption" +} \ No newline at end of file From 2fe1728ef77536dfeadd2ca4d1c4f9a78cbc3df8 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 21:56:13 +0400 Subject: [PATCH 19/54] feat(3.0.0): asymmetricEncryption security scheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../AsymmetricEncryptionSecuritySchemeTest.kt | 25 +++++++++++++++++++ .../asymmetricEncryption - extended.json | 9 +++++++ ...ymmetricEncryption - wrongly extended.json | 10 ++++++++ .../security_scheme/asymmetricEncryption.json | 4 +++ 5 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/AsymmetricEncryptionSecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index 12d9278e..09393880 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -46,7 +46,7 @@ @JsonSubTypes.Type(value = ApiKeySecurityScheme.class, name = "apiKey"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "X509"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "symmetricEncryption"), -// @JsonSubTypes.Type(value = SecurityScheme.class, name = "asymmetricEncryption"), + @JsonSubTypes.Type(value = SecurityScheme.class, name = "asymmetricEncryption"), // @JsonSubTypes.Type(value = HttpApiKeySecurityScheme.class, name = "httpApiKey"), // @JsonSubTypes.Type(value = HttpSecurityScheme.class, name = "http"), // @JsonSubTypes.Type(value = OAuth2SecurityScheme.class, name = "oauth2"), diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/AsymmetricEncryptionSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/AsymmetricEncryptionSecuritySchemeTest.kt new file mode 100644 index 00000000..ff6e6cd1 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/AsymmetricEncryptionSecuritySchemeTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.security_scheme + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class AsymmetricEncryptionSecuritySchemeTest: SerDeTest() { + + override fun objectClass() = SecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/asymmetricEncryption.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/asymmetricEncryption - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/asymmetricEncryption - wrongly extended.json" + + override fun build(): SecurityScheme { + return SecurityScheme.builder() + .type(SecurityScheme.Type.ASYMMETRIC_ENCRYPTION) + .description("asymmetricEncryption") + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption - extended.json new file mode 100644 index 00000000..8c6b124c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption - extended.json @@ -0,0 +1,9 @@ +{ + "type" : "asymmetricEncryption", + "description" : "asymmetricEncryption", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption - wrongly extended.json new file mode 100644 index 00000000..fdf5491f --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "type": "asymmetricEncryption", + "description": "asymmetricEncryption", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption.json new file mode 100644 index 00000000..db927521 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/asymmetricEncryption.json @@ -0,0 +1,4 @@ +{ + "type": "asymmetricEncryption", + "description": "asymmetricEncryption" +} \ No newline at end of file From e88711d00a735860f2d475d605d039d5bc56ce58 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 21:59:57 +0400 Subject: [PATCH 20/54] feat(3.0.0): HttpApiKeySecurityScheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../http/HttpApiKeySecurityScheme.java | 56 +++++++++++++++++++ .../http/HttpApiKeySecuritySchemeTest.kt | 23 ++++++++ .../http/httpApiKey - extended.json | 11 ++++ .../http/httpApiKey - wrongly extended.json | 12 ++++ .../v3/security_scheme/http/httpApiKey.json | 6 ++ 6 files changed, 109 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/http/HttpApiKeySecurityScheme.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/http/HttpApiKeySecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index 09393880..e56ae526 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -47,7 +47,7 @@ @JsonSubTypes.Type(value = SecurityScheme.class, name = "X509"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "symmetricEncryption"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "asymmetricEncryption"), -// @JsonSubTypes.Type(value = HttpApiKeySecurityScheme.class, name = "httpApiKey"), + @JsonSubTypes.Type(value = HttpApiKeySecurityScheme.class, name = "httpApiKey"), // @JsonSubTypes.Type(value = HttpSecurityScheme.class, name = "http"), // @JsonSubTypes.Type(value = OAuth2SecurityScheme.class, name = "oauth2"), @JsonSubTypes.Type(value = OpenIdConnectSecurityScheme.class, name = "openIdConnect"), diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/http/HttpApiKeySecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/http/HttpApiKeySecurityScheme.java new file mode 100644 index 00000000..7ef9ecd8 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/http/HttpApiKeySecurityScheme.java @@ -0,0 +1,56 @@ +package com.asyncapi.v3.security_scheme.http; + +import com.asyncapi.v3.security_scheme.SecurityScheme; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * @version 3.0.0 + * @see SecurityScheme + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class HttpApiKeySecurityScheme extends SecurityScheme { + + /** + * REQUIRED. + *

+ * The name of the header, query or cookie parameter to be used. + */ + @NotNull + private String name = ""; + + /** + * REQUIRED. + *

+ * The location of the API key. + */ + @Nullable + private ApiKeyLocation in; + + @Builder(builderMethodName = "httpApiKeyBuilder") + public HttpApiKeySecurityScheme(@Nullable String description, + @NotNull String name, + @Nullable ApiKeyLocation in) { + super(Type.HTTP_API_KEY, description); + this.name = name; + this.in = in; + } + + public enum ApiKeyLocation { + + @JsonProperty("query") + QUERY, + @JsonProperty("header") + HEADER, + @JsonProperty("cookie") + COOKIE + + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/http/HttpApiKeySecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/http/HttpApiKeySecuritySchemeTest.kt new file mode 100644 index 00000000..df47744d --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/http/HttpApiKeySecuritySchemeTest.kt @@ -0,0 +1,23 @@ +package com.asyncapi.v3.security_scheme.http + +import com.asyncapi.v3.SerDeTest + +class HttpApiKeySecuritySchemeTest: SerDeTest() { + + override fun objectClass() = HttpApiKeySecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/http/httpApiKey.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/http/httpApiKey - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/http/httpApiKey - wrongly extended.json" + + override fun build(): HttpApiKeySecurityScheme { + return HttpApiKeySecurityScheme.httpApiKeyBuilder() + .description("httpApiKey") + .name("api_key") + .`in`(HttpApiKeySecurityScheme.ApiKeyLocation.HEADER) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey - extended.json new file mode 100644 index 00000000..5ab385b3 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey - extended.json @@ -0,0 +1,11 @@ +{ + "type" : "httpApiKey", + "description" : "httpApiKey", + "name" : "api_key", + "in" : "header", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey - wrongly extended.json new file mode 100644 index 00000000..767730b1 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey - wrongly extended.json @@ -0,0 +1,12 @@ +{ + "type": "httpApiKey", + "description": "httpApiKey", + "name": "api_key", + "in": "header", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey.json new file mode 100644 index 00000000..467469f5 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpApiKey.json @@ -0,0 +1,6 @@ +{ + "type": "httpApiKey", + "description": "httpApiKey", + "name": "api_key", + "in": "header" +} From 6d7c110464520669263c67b7f5d4e9d708af4205 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 22:04:04 +0400 Subject: [PATCH 21/54] feat(3.0.0): HttpSecurityScheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../http/HttpSecurityScheme.java | 43 +++++++++++++++++++ .../http/HttpSecuritySchemeTest.kt | 42 ++++++++++++++++++ .../http/httpBasic - extended.json | 11 +++++ .../http/httpBasic - wrongly extended.json | 11 +++++ .../v3/security_scheme/http/httpBasic.json | 5 +++ .../http/httpBearer - extended.json | 11 +++++ .../http/httpBearer - wrongly extended.json | 12 ++++++ .../v3/security_scheme/http/httpBearer.json | 6 +++ 9 files changed, 142 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/http/HttpSecurityScheme.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/http/HttpSecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index e56ae526..bf3a7f3b 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -48,7 +48,7 @@ @JsonSubTypes.Type(value = SecurityScheme.class, name = "symmetricEncryption"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "asymmetricEncryption"), @JsonSubTypes.Type(value = HttpApiKeySecurityScheme.class, name = "httpApiKey"), -// @JsonSubTypes.Type(value = HttpSecurityScheme.class, name = "http"), + @JsonSubTypes.Type(value = HttpSecurityScheme.class, name = "http"), // @JsonSubTypes.Type(value = OAuth2SecurityScheme.class, name = "oauth2"), @JsonSubTypes.Type(value = OpenIdConnectSecurityScheme.class, name = "openIdConnect"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "plain"), diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/http/HttpSecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/http/HttpSecurityScheme.java new file mode 100644 index 00000000..a85fc92f --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/http/HttpSecurityScheme.java @@ -0,0 +1,43 @@ +package com.asyncapi.v3.security_scheme.http; + +import com.asyncapi.v3.security_scheme.SecurityScheme; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * @version 3.0.0 + * @see SecurityScheme + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class HttpSecurityScheme extends SecurityScheme { + + /** + * REQUIRED. + *

+ * The name of the HTTP Authorization scheme to be used in the Authorization header as defined in RFC7235. + */ + @NotNull + private String scheme = ""; + + /** + * A hint to the client to identify how the bearer token is formatted. Bearer tokens are usually generated + * by an authorization server, so this information is primarily for documentation purposes. + */ + @Nullable + private String bearerFormat; + + @Builder(builderMethodName = "httpBuilder") + public HttpSecurityScheme(@Nullable String description, + @NotNull String scheme, + @Nullable String bearerFormat) { + super(Type.HTTP, description); + this.scheme = scheme; + this.bearerFormat = bearerFormat; + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/http/HttpSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/http/HttpSecuritySchemeTest.kt new file mode 100644 index 00000000..c06ad616 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/http/HttpSecuritySchemeTest.kt @@ -0,0 +1,42 @@ +package com.asyncapi.v3.security_scheme.http + +import com.asyncapi.v3.SerDeTest + +class HttpSecuritySchemeBasicTest: SerDeTest() { + + override fun objectClass() = HttpSecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/http/httpBasic.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/http/httpBasic - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/http/httpBasic - wrongly extended.json" + + override fun build(): HttpSecurityScheme { + return HttpSecurityScheme.httpBuilder() + .description("http") + .scheme("basic") + .build() + } + +} + +class HttpSecuritySchemeBearerTest: SerDeTest() { + + override fun objectClass() = HttpSecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/http/httpBearer.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/http/httpBearer - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/http/httpBearer - wrongly extended.json" + + override fun build(): HttpSecurityScheme { + return HttpSecurityScheme.httpBuilder() + .description("http") + .scheme("bearer") + .bearerFormat("JWT") + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - extended.json new file mode 100644 index 00000000..f41e4c2c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - extended.json @@ -0,0 +1,11 @@ +{ + "type" : "http", + "description" : "http", + "scheme" : "basic", + "bearerFormat" : null, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - wrongly extended.json new file mode 100644 index 00000000..5c4e3887 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - wrongly extended.json @@ -0,0 +1,11 @@ +{ + "type": "http", + "description": "http", + "scheme": "basic", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic.json new file mode 100644 index 00000000..38f712e1 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic.json @@ -0,0 +1,5 @@ +{ + "type": "http", + "description": "http", + "scheme": "basic" +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer - extended.json new file mode 100644 index 00000000..1a371df6 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer - extended.json @@ -0,0 +1,11 @@ +{ + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer - wrongly extended.json new file mode 100644 index 00000000..cfdc83f2 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer - wrongly extended.json @@ -0,0 +1,12 @@ +{ + "type": "http", + "description": "http", + "scheme": "bearer", + "bearerFormat": "JWT", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer.json new file mode 100644 index 00000000..68da22ef --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBearer.json @@ -0,0 +1,6 @@ +{ + "type": "http", + "description": "http", + "scheme": "bearer", + "bearerFormat": "JWT" +} From f1759fca4fd98789bdd2a8134f4be758424bda8d Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 22:23:24 +0400 Subject: [PATCH 22/54] feat(3.0.0): OAuth2SecurityScheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../oauth2/OAuth2SecurityScheme.java | 44 ++++++++++++++++ .../v3/security_scheme/oauth2/OAuthFlows.java | 51 +++++++++++++++++++ .../flow/AuthorizationCodeOAuthFlow.java | 46 +++++++++++++++++ .../flow/ClientCredentialsOAuthFlow.java | 36 +++++++++++++ .../oauth2/flow/ImplicitOAuthFlow.java | 36 +++++++++++++ .../oauth2/flow/OAuthFlow.java | 43 ++++++++++++++++ .../oauth2/flow/PasswordOAuthFlow.java | 36 +++++++++++++ .../oauth2/OAuth2SecuritySchemeTest.kt | 27 ++++++++++ .../security_scheme/oauth2/OAuthFlowTest.kt | 28 ++++++++++ .../flow/AuthorizationCodeOAuthFlowTest.kt | 27 ++++++++++ .../flow/ClientCredentialsOAuthFlowTest.kt | 26 ++++++++++ .../oauth2/flow/ImplicitOAuthFlowTest.kt | 26 ++++++++++ .../oauth2/flow/OAuthFlowTest.kt | 25 +++++++++ .../oauth2/flow/PasswordOAuthFlowTest.kt | 26 ++++++++++ ...authorizationCodeOAuthFlow - extended.json | 14 +++++ ...ationCodeOAuthFlow - wrongly extended.json | 15 ++++++ .../flow/authorizationCodeOAuthFlow.json | 9 ++++ ...clientCredentialsOAuthFlow - extended.json | 13 +++++ ...edentialsOAuthFlow - wrongly extended.json | 14 +++++ .../flow/clientCredentialsOAuthFlow.json | 8 +++ .../flow/implicitOAuthFlow - extended.json | 13 +++++ .../implicitOAuthFlow - wrongly extended.json | 14 +++++ .../oauth2/flow/implicitOAuthFlow.json | 8 +++ .../oauth2/flow/oauthFlow - extended.json | 12 +++++ .../flow/oauthFlow - wrongly extended.json | 13 +++++ .../oauth2/flow/oauthFlow.json | 7 +++ .../flow/passwordOAuthFlow - extended.json | 13 +++++ .../passwordOAuthFlow - wrongly extended.json | 14 +++++ .../oauth2/flow/passwordOAuthFlow.json | 8 +++ .../oauth2/oauth2 - extended.json | 45 ++++++++++++++++ .../oauth2/oauth2 - wrongly extended.json | 46 +++++++++++++++++ .../v3/security_scheme/oauth2/oauth2.json | 40 +++++++++++++++ .../oauth2/oauthFlows - extended.json | 40 +++++++++++++++ .../oauth2/oauthFlows - wrongly extended.json | 41 +++++++++++++++ .../v3/security_scheme/oauth2/oauthFlows.json | 35 +++++++++++++ 36 files changed, 900 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/OAuth2SecurityScheme.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/OAuthFlows.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlow.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/ClientCredentialsOAuthFlow.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/ImplicitOAuthFlow.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/OAuthFlow.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/PasswordOAuthFlow.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/OAuth2SecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/OAuthFlowTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlowTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/ClientCredentialsOAuthFlowTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/ImplicitOAuthFlowTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/OAuthFlowTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/PasswordOAuthFlowTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2 - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2 - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index bf3a7f3b..86483da9 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -49,7 +49,7 @@ @JsonSubTypes.Type(value = SecurityScheme.class, name = "asymmetricEncryption"), @JsonSubTypes.Type(value = HttpApiKeySecurityScheme.class, name = "httpApiKey"), @JsonSubTypes.Type(value = HttpSecurityScheme.class, name = "http"), -// @JsonSubTypes.Type(value = OAuth2SecurityScheme.class, name = "oauth2"), + @JsonSubTypes.Type(value = OAuth2SecurityScheme.class, name = "oauth2"), @JsonSubTypes.Type(value = OpenIdConnectSecurityScheme.class, name = "openIdConnect"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "plain"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha256"), diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/OAuth2SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/OAuth2SecurityScheme.java new file mode 100644 index 00000000..e1000944 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/OAuth2SecurityScheme.java @@ -0,0 +1,44 @@ +package com.asyncapi.v3.security_scheme.oauth2; + +import com.asyncapi.v3.security_scheme.SecurityScheme; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * @version 3.0.0 + * @see SecurityScheme + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class OAuth2SecurityScheme extends SecurityScheme { + + /** + * REQUIRED. + *

+ * An object containing configuration information for the flow types supported. + */ + @NotNull + private OAuthFlows flows = new OAuthFlows(); + + /** + * List of the needed scope names. + */ + @Nullable + private List scopes; + + @Builder(builderMethodName = "oauth2Builder") + public OAuth2SecurityScheme(@Nullable String description, + @NotNull OAuthFlows flows, + @Nullable List scopes) { + super(Type.OAUTH2, description); + this.flows = flows; + this.scopes = scopes; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/OAuthFlows.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/OAuthFlows.java new file mode 100644 index 00000000..9f33cdb0 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/OAuthFlows.java @@ -0,0 +1,51 @@ +package com.asyncapi.v3.security_scheme.oauth2; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.security_scheme.oauth2.flow.AuthorizationCodeOAuthFlow; +import com.asyncapi.v3.security_scheme.oauth2.flow.ClientCredentialsOAuthFlow; +import com.asyncapi.v3.security_scheme.oauth2.flow.ImplicitOAuthFlow; +import com.asyncapi.v3.security_scheme.oauth2.flow.PasswordOAuthFlow; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Allows configuration of the supported OAuth Flows. + *

+ * This object MAY be extended with Specification Extensions. + * + * @version 3.0.0 + * @see OAuth Flows Object + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class OAuthFlows extends ExtendableObject { + + /** + * Configuration for the OAuth Implicit flow + */ + @Nullable + private ImplicitOAuthFlow implicit; + + /** + * Configuration for the OAuth Resource Owner Protected Credentials flow + */ + @Nullable + private PasswordOAuthFlow password; + + /** + * Configuration for the OAuth Client Credentials flow. + */ + @Nullable + private ClientCredentialsOAuthFlow clientCredentials; + + /** + * Configuration for the OAuth Authorization Code flow + */ + @Nullable + private AuthorizationCodeOAuthFlow authorizationCode; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlow.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlow.java new file mode 100644 index 00000000..0d2351d6 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlow.java @@ -0,0 +1,46 @@ +package com.asyncapi.v3.security_scheme.oauth2.flow; + +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.Map; + +/** + * This object MAY be extended with Specification Extensions. + * + * @version 3.0.0 + * @see OAuth Flow Object + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AuthorizationCodeOAuthFlow extends OAuthFlow { + + /** + * REQUIRED. + *

+ * The authorization URL to be used for this flow. This MUST be in the form of an absolute URL. + */ + @NotNull + private String authorizationUrl = ""; + + /** + * The token URL to be used for this flow. This MUST be in the form of an absolute URL. + */ + @Nullable + private String tokenUrl = ""; + + @Builder(builderMethodName = "authorizationCodeBuilder") + public AuthorizationCodeOAuthFlow(@Nullable String refreshUrl, + @NotNull Map scopes, + @NotNull String authorizationUrl, + @Nullable String tokenUrl) { + super(refreshUrl, scopes); + this.authorizationUrl = authorizationUrl; + this.tokenUrl = tokenUrl; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/ClientCredentialsOAuthFlow.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/ClientCredentialsOAuthFlow.java new file mode 100644 index 00000000..b927fdda --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/ClientCredentialsOAuthFlow.java @@ -0,0 +1,36 @@ +package com.asyncapi.v3.security_scheme.oauth2.flow; + +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.Map; + +/** + * @version 3.0.0 + * @see OAuth Flow Object + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class ClientCredentialsOAuthFlow extends OAuthFlow { + + /** + * REQUIRED. + *

+ * The token URL to be used for this flow. This MUST be in the form of a URL. + */ + @NotNull + private String tokenUrl = ""; + + @Builder(builderMethodName = "clientCredentialsBuilder") + public ClientCredentialsOAuthFlow(@Nullable String refreshUrl, + @NotNull Map scopes, + @NotNull String tokenUrl) { + super(refreshUrl, scopes); + this.tokenUrl = tokenUrl; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/ImplicitOAuthFlow.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/ImplicitOAuthFlow.java new file mode 100644 index 00000000..3c7fada4 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/ImplicitOAuthFlow.java @@ -0,0 +1,36 @@ +package com.asyncapi.v3.security_scheme.oauth2.flow; + +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.Map; + +/** + * @version 3.0.0 + * @see OAuth Flow Object + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class ImplicitOAuthFlow extends OAuthFlow { + + /** + * REQUIRED. + *

+ * The authorization URL to be used for this flow. This MUST be in the form of a URL + */ + @NotNull + private String authorizationUrl = ""; + + @Builder(builderMethodName = "implicitBuilder") + public ImplicitOAuthFlow(@Nullable String refreshUrl, + @NotNull Map scopes, + @NotNull String authorizationUrl) { + super(refreshUrl, scopes); + this.authorizationUrl = authorizationUrl; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/OAuthFlow.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/OAuthFlow.java new file mode 100644 index 00000000..06715a94 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/OAuthFlow.java @@ -0,0 +1,43 @@ +package com.asyncapi.v3.security_scheme.oauth2.flow; + +import com.asyncapi.v3.ExtendableObject; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.HashMap; +import java.util.Map; + +/** + * Configuration details for a supported OAuth Flow + *

+ * This object MAY be extended with Specification Extensions. + * + * @version 3.0.0 + * @see OAuth Flow Object + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class OAuthFlow extends ExtendableObject { + + /** + * The URL to be used for obtaining refresh tokens. This MUST be in the form of an absolute URL. + */ + @Nullable + @Builder.Default + private String refreshUrl = ""; + + /** + * REQUIRED. + *

+ * The available scopes for the OAuth2 security scheme. A map between the scope name and a short description for it. + */ + @NotNull + @Builder.Default + private Map scopes = new HashMap<>(); + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/PasswordOAuthFlow.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/PasswordOAuthFlow.java new file mode 100644 index 00000000..49ebd511 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/oauth2/flow/PasswordOAuthFlow.java @@ -0,0 +1,36 @@ +package com.asyncapi.v3.security_scheme.oauth2.flow; + +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.Map; + +/** + * @version 3.0.0 + * @see OAuth Flow Object + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class PasswordOAuthFlow extends OAuthFlow { + + /** + * REQUIRED. + *

+ * The token URL to be used for this flow. This MUST be in the form of a URL. + */ + @NotNull + private String tokenUrl = ""; + + @Builder(builderMethodName = "passwordBuilder") + public PasswordOAuthFlow(@Nullable String refreshUrl, + @NotNull Map scopes, + @NotNull String tokenUrl) { + super(refreshUrl, scopes); + this.tokenUrl = tokenUrl; + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/OAuth2SecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/OAuth2SecuritySchemeTest.kt new file mode 100644 index 00000000..19d6840c --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/OAuth2SecuritySchemeTest.kt @@ -0,0 +1,27 @@ +package com.asyncapi.v3.security_scheme.oauth2 + +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3.security_scheme.SecurityScheme + +/** + * @author Pavel Bodiachevskii + */ +class OAuth2SecuritySchemeTest: SerDeTest() { + + override fun objectClass() = OAuth2SecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/oauth2/oauth2.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/oauth2/oauth2 - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/oauth2/oauth2 - wrongly extended.json" + + override fun build(): SecurityScheme { + return OAuth2SecurityScheme.oauth2Builder() + .description("oauth2") + .flows(OAuthFlowTest().build()) + .scopes(listOf("write:pets", "read:pets")) + .build() + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/OAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/OAuthFlowTest.kt new file mode 100644 index 00000000..1a943fa8 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/OAuthFlowTest.kt @@ -0,0 +1,28 @@ +package com.asyncapi.v3.security_scheme.oauth2 + +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3.security_scheme.oauth2.flow.* + +/** + * @author Pavel Bodiachevskii + */ +class OAuthFlowTest: SerDeTest() { + + override fun objectClass() = OAuthFlows::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/oauth2/oauthFlows.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/oauth2/oauthFlows - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/oauth2/oauthFlows - wrongly extended.json" + + override fun build(): OAuthFlows { + return OAuthFlows.builder() + .authorizationCode(AuthorizationCodeOAuthFlowTest().build()) + .clientCredentials(ClientCredentialsOAuthFlowTest().build()) + .implicit(ImplicitOAuthFlowTest().build()) + .password(PasswordOAuthFlowTest().build()) + .build() + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlowTest.kt new file mode 100644 index 00000000..01f543e3 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlowTest.kt @@ -0,0 +1,27 @@ +package com.asyncapi.v3.security_scheme.oauth2.flow + +import com.asyncapi.v3.SerDeTest + +class AuthorizationCodeOAuthFlowTest: SerDeTest() { + + override fun objectClass() = AuthorizationCodeOAuthFlow::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json" + + override fun build(): AuthorizationCodeOAuthFlow { + return AuthorizationCodeOAuthFlow.authorizationCodeBuilder() + .authorizationUrl("https://example.com/api/oauth/dialog") + .tokenUrl("https://example.com/api/oauth/token") + .refreshUrl("https://example.com/api/oauth/refresh") + .scopes(mapOf( + Pair("write:pets", "modify pets in your account"), + Pair("read:pets", "read your pets") + )) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/ClientCredentialsOAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/ClientCredentialsOAuthFlowTest.kt new file mode 100644 index 00000000..ff2f0d93 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/ClientCredentialsOAuthFlowTest.kt @@ -0,0 +1,26 @@ +package com.asyncapi.v3.security_scheme.oauth2.flow + +import com.asyncapi.v3.SerDeTest + +class ClientCredentialsOAuthFlowTest: SerDeTest() { + + override fun objectClass() = ClientCredentialsOAuthFlow::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json" + + override fun build(): ClientCredentialsOAuthFlow { + return ClientCredentialsOAuthFlow.clientCredentialsBuilder() + .tokenUrl("https://example.com/api/oauth/token") + .refreshUrl("https://example.com/api/oauth/refresh") + .scopes(mapOf( + Pair("write:pets", "modify pets in your account"), + Pair("read:pets", "read your pets") + )) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/ImplicitOAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/ImplicitOAuthFlowTest.kt new file mode 100644 index 00000000..12cdc5df --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/ImplicitOAuthFlowTest.kt @@ -0,0 +1,26 @@ +package com.asyncapi.v3.security_scheme.oauth2.flow + +import com.asyncapi.v3.SerDeTest + +class ImplicitOAuthFlowTest: SerDeTest() { + + override fun objectClass() = ImplicitOAuthFlow::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json" + + override fun build(): ImplicitOAuthFlow { + return ImplicitOAuthFlow.implicitBuilder() + .authorizationUrl("https://example.com/api/oauth/dialog") + .refreshUrl("https://example.com/api/oauth/refresh") + .scopes(mapOf( + Pair("write:pets", "modify pets in your account"), + Pair("read:pets", "read your pets") + )) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/OAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/OAuthFlowTest.kt new file mode 100644 index 00000000..b40c1eea --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/OAuthFlowTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.security_scheme.oauth2.flow + +import com.asyncapi.v3.SerDeTest + +class OAuthFlowTest: SerDeTest() { + + override fun objectClass() = OAuthFlow::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/oauth2/flow/oauthFlow.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/oauth2/flow/oauthFlow - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json" + + override fun build(): OAuthFlow { + return OAuthFlow.builder() + .refreshUrl("https://example.com/api/oauth/refresh") + .scopes(mapOf( + Pair("write:pets", "modify pets in your account"), + Pair("read:pets", "read your pets") + )) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/PasswordOAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/PasswordOAuthFlowTest.kt new file mode 100644 index 00000000..531e97ad --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/oauth2/flow/PasswordOAuthFlowTest.kt @@ -0,0 +1,26 @@ +package com.asyncapi.v3.security_scheme.oauth2.flow + +import com.asyncapi.v3.SerDeTest + +class PasswordOAuthFlowTest: SerDeTest() { + + override fun objectClass() = PasswordOAuthFlow::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json" + + override fun build(): PasswordOAuthFlow { + return PasswordOAuthFlow.passwordBuilder() + .tokenUrl("https://example.com/api/oauth/token") + .refreshUrl("https://example.com/api/oauth/refresh") + .scopes(mapOf( + Pair("write:pets", "modify pets in your account"), + Pair("read:pets", "read your pets") + )) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json new file mode 100644 index 00000000..46d99302 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json @@ -0,0 +1,14 @@ +{ + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "authorizationUrl" : "https://example.com/api/oauth/dialog", + "tokenUrl" : "https://example.com/api/oauth/token", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json new file mode 100644 index 00000000..19240f8f --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json @@ -0,0 +1,15 @@ +{ + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json new file mode 100644 index 00000000..74711855 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json @@ -0,0 +1,9 @@ +{ + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json new file mode 100644 index 00000000..c211a2d9 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json @@ -0,0 +1,13 @@ +{ + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "tokenUrl" : "https://example.com/api/oauth/token", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json new file mode 100644 index 00000000..b5d31e51 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json @@ -0,0 +1,14 @@ +{ + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json new file mode 100644 index 00000000..0c1ea575 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json @@ -0,0 +1,8 @@ +{ + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json new file mode 100644 index 00000000..43c50d71 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json @@ -0,0 +1,13 @@ +{ + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "authorizationUrl" : "https://example.com/api/oauth/dialog", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json new file mode 100644 index 00000000..215f12ae --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json @@ -0,0 +1,14 @@ +{ + "authorizationUrl": "https://example.com/api/oauth/dialog", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow.json new file mode 100644 index 00000000..d0c0526a --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/implicitOAuthFlow.json @@ -0,0 +1,8 @@ +{ + "authorizationUrl": "https://example.com/api/oauth/dialog", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow - extended.json new file mode 100644 index 00000000..cb45fb58 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow - extended.json @@ -0,0 +1,12 @@ +{ + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json new file mode 100644 index 00000000..511f29d1 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json @@ -0,0 +1,13 @@ +{ + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow.json new file mode 100644 index 00000000..9b766a37 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/oauthFlow.json @@ -0,0 +1,7 @@ +{ + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json new file mode 100644 index 00000000..c211a2d9 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json @@ -0,0 +1,13 @@ +{ + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "tokenUrl" : "https://example.com/api/oauth/token", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json new file mode 100644 index 00000000..b5d31e51 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json @@ -0,0 +1,14 @@ +{ + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow.json new file mode 100644 index 00000000..0c1ea575 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/flow/passwordOAuthFlow.json @@ -0,0 +1,8 @@ +{ + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2 - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2 - extended.json new file mode 100644 index 00000000..3e2171a7 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2 - extended.json @@ -0,0 +1,45 @@ +{ + "type" : "oauth2", + "description" : "oauth2", + "flows" : { + "implicit" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "authorizationUrl" : "https://example.com/api/oauth/dialog" + }, + "password" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "tokenUrl" : "https://example.com/api/oauth/token" + }, + "clientCredentials" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "tokenUrl" : "https://example.com/api/oauth/token" + }, + "authorizationCode" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "authorizationUrl" : "https://example.com/api/oauth/dialog", + "tokenUrl" : "https://example.com/api/oauth/token" + } + }, + "scopes" : [ "write:pets", "read:pets" ], + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2 - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2 - wrongly extended.json new file mode 100644 index 00000000..2b4b9899 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2 - wrongly extended.json @@ -0,0 +1,46 @@ +{ + "type": "oauth2", + "description": "oauth2", + "flows": { + "authorizationCode": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "clientCredentials": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "implicit": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "password": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + } + }, + "scopes": [ "write:pets", "read:pets" ], + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2.json new file mode 100644 index 00000000..2adf3db5 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauth2.json @@ -0,0 +1,40 @@ +{ + "type": "oauth2", + "description": "oauth2", + "flows": { + "authorizationCode": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "clientCredentials": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "implicit": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "password": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + } + }, + "scopes": [ "write:pets", "read:pets" ] +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows - extended.json new file mode 100644 index 00000000..6ed27910 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows - extended.json @@ -0,0 +1,40 @@ +{ + "implicit" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "authorizationUrl" : "https://example.com/api/oauth/dialog" + }, + "password" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "tokenUrl" : "https://example.com/api/oauth/token" + }, + "clientCredentials" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "tokenUrl" : "https://example.com/api/oauth/token" + }, + "authorizationCode" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "authorizationUrl" : "https://example.com/api/oauth/dialog", + "tokenUrl" : "https://example.com/api/oauth/token" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows - wrongly extended.json new file mode 100644 index 00000000..8bc0ba04 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows - wrongly extended.json @@ -0,0 +1,41 @@ +{ + "authorizationCode": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "clientCredentials": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "implicit": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "password": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows.json new file mode 100644 index 00000000..11671049 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/oauth2/oauthFlows.json @@ -0,0 +1,35 @@ +{ + "authorizationCode": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "clientCredentials": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "implicit": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "password": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + } +} \ No newline at end of file From 1db05320b9ea4eb4f462789783a9365339b53025 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 22:24:56 +0400 Subject: [PATCH 23/54] feat(3.0.0): plain security scheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../PlainSecuritySchemeTest.kt | 25 +++++++++++++++++++ .../v3/security_scheme/plain - extended.json | 9 +++++++ .../plain - wrongly extended.json | 10 ++++++++ .../json/v3/security_scheme/plain.json | 4 +++ 5 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/PlainSecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/plain - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/plain - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/plain.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index 86483da9..d1aff9d1 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -51,7 +51,7 @@ @JsonSubTypes.Type(value = HttpSecurityScheme.class, name = "http"), @JsonSubTypes.Type(value = OAuth2SecurityScheme.class, name = "oauth2"), @JsonSubTypes.Type(value = OpenIdConnectSecurityScheme.class, name = "openIdConnect"), -// @JsonSubTypes.Type(value = SecurityScheme.class, name = "plain"), + @JsonSubTypes.Type(value = SecurityScheme.class, name = "plain"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha256"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha512"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "gssapi"), diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/PlainSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/PlainSecuritySchemeTest.kt new file mode 100644 index 00000000..9eca4fd4 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/PlainSecuritySchemeTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.security_scheme + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class PlainSecuritySchemeTest: SerDeTest() { + + override fun objectClass() = SecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/plain.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/plain - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/plain - wrongly extended.json" + + override fun build(): SecurityScheme { + return SecurityScheme.builder() + .type(SecurityScheme.Type.PLAIN) + .description("plain") + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/plain - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/plain - extended.json new file mode 100644 index 00000000..135a087a --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/plain - extended.json @@ -0,0 +1,9 @@ +{ + "type" : "plain", + "description" : "plain", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/plain - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/plain - wrongly extended.json new file mode 100644 index 00000000..7cdcc873 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/plain - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "type": "plain", + "description": "plain", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/plain.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/plain.json new file mode 100644 index 00000000..9bda0b46 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/plain.json @@ -0,0 +1,4 @@ +{ + "type": "plain", + "description": "plain" +} \ No newline at end of file From 5a0182d2ce0b42934188776cecc6eae844e8afa5 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 22:26:15 +0400 Subject: [PATCH 24/54] feat(3.0.0): scramSha256 security scheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../ScramSha256SecuritySchemeTest.kt | 25 +++++++++++++++++++ .../scramSha256 - extended.json | 9 +++++++ .../scramSha256 - wrongly extended.json | 10 ++++++++ .../json/v3/security_scheme/scramSha256.json | 4 +++ 5 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ScramSha256SecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256 - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256 - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index d1aff9d1..b2dd8565 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -52,7 +52,7 @@ @JsonSubTypes.Type(value = OAuth2SecurityScheme.class, name = "oauth2"), @JsonSubTypes.Type(value = OpenIdConnectSecurityScheme.class, name = "openIdConnect"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "plain"), -// @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha256"), + @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha256"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha512"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "gssapi"), }) diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ScramSha256SecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ScramSha256SecuritySchemeTest.kt new file mode 100644 index 00000000..501f23f3 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ScramSha256SecuritySchemeTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.security_scheme + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class ScramSha256SecuritySchemeTest: SerDeTest() { + + override fun objectClass() = SecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/scramSha256.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/scramSha256 - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/scramSha256 - wrongly extended.json" + + override fun build(): SecurityScheme { + return SecurityScheme.builder() + .type(SecurityScheme.Type.SCRAM_SHA256) + .description("scramSha256") + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256 - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256 - extended.json new file mode 100644 index 00000000..c338b045 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256 - extended.json @@ -0,0 +1,9 @@ +{ + "type" : "scramSha256", + "description" : "scramSha256", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256 - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256 - wrongly extended.json new file mode 100644 index 00000000..7042bea1 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256 - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "type": "scramSha256", + "description": "scramSha256", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256.json new file mode 100644 index 00000000..b6f35d52 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha256.json @@ -0,0 +1,4 @@ +{ + "type": "scramSha256", + "description": "scramSha256" +} \ No newline at end of file From 47c6ca69e918fe68fd80e530b5e6380010facc4d Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 22:28:53 +0400 Subject: [PATCH 25/54] feat(3.0.0): scramSha512 security scheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../ScramSha512SecuritySchemeTest.kt | 25 +++++++++++++++++++ .../scramSha512 - extended.json | 9 +++++++ .../scramSha512 - wrongly extended.json | 10 ++++++++ .../json/v3/security_scheme/scramSha512.json | 4 +++ 5 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ScramSha512SecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512 - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512 - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index b2dd8565..eb1aacd1 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -53,7 +53,7 @@ @JsonSubTypes.Type(value = OpenIdConnectSecurityScheme.class, name = "openIdConnect"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "plain"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha256"), -// @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha512"), + @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha512"), // @JsonSubTypes.Type(value = SecurityScheme.class, name = "gssapi"), }) @EqualsAndHashCode(callSuper = true) diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ScramSha512SecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ScramSha512SecuritySchemeTest.kt new file mode 100644 index 00000000..1e26e677 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/ScramSha512SecuritySchemeTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.security_scheme + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class ScramSha512SecuritySchemeTest: SerDeTest() { + + override fun objectClass() = SecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/scramSha512.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/scramSha512 - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/scramSha512 - wrongly extended.json" + + override fun build(): SecurityScheme { + return SecurityScheme.builder() + .type(SecurityScheme.Type.SCRAM_SHA512) + .description("scramSha512") + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512 - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512 - extended.json new file mode 100644 index 00000000..17a21d8d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512 - extended.json @@ -0,0 +1,9 @@ +{ + "type" : "scramSha512", + "description" : "scramSha512", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512 - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512 - wrongly extended.json new file mode 100644 index 00000000..50109d93 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512 - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "type": "scramSha512", + "description": "scramSha512", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512.json new file mode 100644 index 00000000..52481a68 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/scramSha512.json @@ -0,0 +1,4 @@ +{ + "type": "scramSha512", + "description": "scramSha512" +} \ No newline at end of file From 63e5012ed517b23b944898b26e9a57b880928179 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 22:30:15 +0400 Subject: [PATCH 26/54] feat(3.0.0): gssapi security scheme --- .../v3/security_scheme/SecurityScheme.java | 2 +- .../GssapiSecuritySchemeTest.kt | 25 +++++++++++++++++++ .../v3/security_scheme/gssapi - extended.json | 9 +++++++ .../gssapi - wrongly extended.json | 10 ++++++++ .../json/v3/security_scheme/gssapi.json | 4 +++ 5 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/GssapiSecuritySchemeTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java index eb1aacd1..795fcb20 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/security_scheme/SecurityScheme.java @@ -54,7 +54,7 @@ @JsonSubTypes.Type(value = SecurityScheme.class, name = "plain"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha256"), @JsonSubTypes.Type(value = SecurityScheme.class, name = "scramSha512"), -// @JsonSubTypes.Type(value = SecurityScheme.class, name = "gssapi"), + @JsonSubTypes.Type(value = SecurityScheme.class, name = "gssapi"), }) @EqualsAndHashCode(callSuper = true) public class SecurityScheme extends ExtendableObject { diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/GssapiSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/GssapiSecuritySchemeTest.kt new file mode 100644 index 00000000..f0f20f3c --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/security_scheme/GssapiSecuritySchemeTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.security_scheme + +import com.asyncapi.v3.SerDeTest + +/** + * @author Pavel Bodiachevskii + */ +class GssapiSecuritySchemeTest: SerDeTest() { + + override fun objectClass() = SecurityScheme::class.java + + override fun baseObjectJson() = "/json/v3/security_scheme/gssapi.json" + + override fun extendedObjectJson() = "/json/v3/security_scheme/gssapi - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/security_scheme/gssapi - wrongly extended.json" + + override fun build(): SecurityScheme { + return SecurityScheme.builder() + .type(SecurityScheme.Type.GSSAPI) + .description("gssapi") + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi - extended.json new file mode 100644 index 00000000..636a9ddc --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi - extended.json @@ -0,0 +1,9 @@ +{ + "type" : "gssapi", + "description" : "gssapi", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi - wrongly extended.json new file mode 100644 index 00000000..7307abaf --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "type": "gssapi", + "description": "gssapi", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi.json new file mode 100644 index 00000000..b45a1317 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/gssapi.json @@ -0,0 +1,4 @@ +{ + "type": "gssapi", + "description": "gssapi" +} \ No newline at end of file From 9624430d26aa46cf3aa5f707f4ed38e767dd5302 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 27 Sep 2023 22:49:00 +0400 Subject: [PATCH 27/54] feat(3.0.0): ServerBinding --- .../v3/binding/server/ServerBinding.java | 14 +++ .../server/amqp/AMQPServerBinding.java | 21 ++++ .../server/amqp1/AMQP1ServerBinding.java | 21 ++++ .../anypointmq/AnypointMQServerBinding.java | 21 ++++ .../GooglePubSubServerBinding.java | 21 ++++ .../server/http/HTTPServerBinding.java | 21 ++++ .../server/ibmmq/IBMMQServerBinding.java | 102 ++++++++++++++++++ .../binding/server/jms/JMSServerBinding.java | 21 ++++ .../server/kafka/KafkaServerBinding.java | 52 +++++++++ .../server/mercure/MercureServerBinding.java | 21 ++++ .../server/mqtt/MQTTServerBinding.java | 68 ++++++++++++ .../mqtt/MQTTServerLastWillConfiguration.java | 65 +++++++++++ .../server/mqtt5/MQTT5ServerBinding.java | 29 +++++ .../server/nats/NATSServerBinding.java | 21 ++++ .../server/pulsar/PulsarServerBinding.java | 43 ++++++++ .../server/redis/RedisServerBinding.java | 21 ++++ .../binding/server/sns/SNSServerBinding.java | 21 ++++ .../server/solace/SolaceServerBinding.java | 44 ++++++++ .../binding/server/sqs/SQSServerBinding.java | 21 ++++ .../server/stomp/STOMPServerBinding.java | 21 ++++ .../server/ws/WebSocketsServerBinding.java | 21 ++++ .../server/ibmmq/IBMMQServerBindingTest.kt | 26 +++++ .../server/kafka/KafkaServerBindingTest.kt | 26 +++++ .../server/mqtt/MQTTServerBindingTest.kt | 33 ++++++ .../server/mqtt5/MQTT5ServerBindingTest.kt | 25 +++++ .../server/pulsar/PulsarServerBindingTest.kt | 25 +++++ .../server/solace/SolaceServerBindingTest.kt | 25 +++++ .../ibmmq/ibmmqServerBinding - extended.json | 13 +++ ...ibmmqServerBinding - wrongly extended.json | 14 +++ .../server/ibmmq/ibmmqServerBinding.json | 8 ++ .../kafka/kafkaServerBinding - extended.json | 10 ++ ...kafkaServerBinding - wrongly extended.json | 11 ++ .../server/kafka/kafkaServerBinding.json | 5 + .../mqtt/mqttServerBinding - extended.json | 17 +++ .../mqttServerBinding - wrongly extended.json | 18 ++++ .../server/mqtt/mqttServerBinding.json | 12 +++ .../mqtt5/mqtt5ServerBinding - extended.json | 9 ++ ...mqtt5ServerBinding - wrongly extended.json | 10 ++ .../server/mqtt5/mqtt5ServerBinding.json | 4 + .../pulsarServerBinding - extended.json | 9 ++ ...ulsarServerBinding - wrongly extended.json | 10 ++ .../server/pulsar/pulsarServerBinding.json | 4 + .../solaceServerBinding - extended.json | 9 ++ ...olaceServerBinding - wrongly extended.json | 10 ++ .../server/solace/solaceServerBinding.json | 4 + 45 files changed, 1027 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/amqp/AMQPServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/amqp1/AMQP1ServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/anypointmq/AnypointMQServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/googlepubsub/GooglePubSubServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/http/HTTPServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ibmmq/IBMMQServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/jms/JMSServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/kafka/KafkaServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mercure/MercureServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt/MQTTServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt/MQTTServerLastWillConfiguration.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt5/MQTT5ServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/nats/NATSServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/pulsar/PulsarServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/redis/RedisServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/sns/SNSServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/solace/SolaceServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/sqs/SQSServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/stomp/STOMPServerBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ws/WebSocketsServerBinding.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/ibmmq/IBMMQServerBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/kafka/KafkaServerBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/mqtt/MQTTServerBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/mqtt5/MQTT5ServerBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/pulsar/PulsarServerBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/solace/SolaceServerBindingTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ServerBinding.java new file mode 100644 index 00000000..531cf95d --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ServerBinding.java @@ -0,0 +1,14 @@ +package com.asyncapi.v3.binding.server; + +import com.asyncapi.v3.ExtendableObject; +import lombok.EqualsAndHashCode; + +/** + * Describes AsyncAPI server binding. + * + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +@EqualsAndHashCode(callSuper = true) +public class ServerBinding extends ExtendableObject { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/amqp/AMQPServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/amqp/AMQPServerBinding.java new file mode 100644 index 00000000..17294433 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/amqp/AMQPServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.amqp; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes AMQP 0-9-1 server binding. + * + * @version 0.2.0 + * @see AMQP server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AMQPServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/amqp1/AMQP1ServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/amqp1/AMQP1ServerBinding.java new file mode 100644 index 00000000..a97dbc33 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/amqp1/AMQP1ServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.amqp1; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes AMQP 1.0 server binding. + * + * @version 0.1.0 + * @see AMQP server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AMQP1ServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/anypointmq/AnypointMQServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/anypointmq/AnypointMQServerBinding.java new file mode 100644 index 00000000..5771573a --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/anypointmq/AnypointMQServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.anypointmq; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Anypoint MQ server binding. + * + * @version 0.0.1 + * @see Anypoint MQ server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AnypointMQServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/googlepubsub/GooglePubSubServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/googlepubsub/GooglePubSubServerBinding.java new file mode 100644 index 00000000..a8ff818f --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/googlepubsub/GooglePubSubServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.googlepubsub; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Google Cloud Pub/Sub server binding. + * + * @version 0.1.0 + * @see Google Cloud Pub/Sub server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class GooglePubSubServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/http/HTTPServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/http/HTTPServerBinding.java new file mode 100644 index 00000000..85c7e333 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/http/HTTPServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.http; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes HTTP server binding. + * + * @version 0.1.0 + * @see HTTP server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class HTTPServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ibmmq/IBMMQServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ibmmq/IBMMQServerBinding.java new file mode 100644 index 00000000..5b424552 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ibmmq/IBMMQServerBinding.java @@ -0,0 +1,102 @@ +package com.asyncapi.v3.binding.server.ibmmq; + +import com.asyncapi.v3.binding.server.ServerBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes IBM MQ server binding. + *

+ * This object contains server connection information about the IBM MQ server, referred to as an IBM MQ queue manager. + * This object contains additional connectivity information not possible to represent within the core AsyncAPI specification. + * + * @version 0.1.0 + * @see IBM MQ server binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes IBM MQ server binding.") +public class IBMMQServerBinding extends ServerBinding { + + /** + * Defines a logical group of IBM MQ server objects. This is necessary to specify multi-endpoint configurations used + * in high availability deployments. If omitted, the server object is not part of a group. + *

+ * MUST NOT be specified for URI Scheme http:// or file:// + */ + @Nullable + @JsonProperty("groupId") + @JsonPropertyDescription("Defines a logical group of IBM MQ server objects. This is necessary to specify multi-endpoint configurations used in high availability deployments. If omitted, the server object is not part of a group.") + private String groupId; + + /** + * The name of the IBM MQ queue manager to bind to in the CCDT file. + *

+ * MUST NOT be specified for URI Scheme ibmmq:// + */ + @Nullable + @Builder.Default + @JsonProperty(value = "ccdtQueueManagerName", defaultValue = "*") + @JsonPropertyDescription("The name of the IBM MQ queue manager to bind to in the CCDT file.") + private String ccdtQueueManagerName = "*"; + + /** + * The recommended cipher specification used to establish a TLS connection between the client and the IBM MQ queue manager. + * More information on SSL/TLS cipher specifications supported by IBM MQ can be found on this page in the IBM MQ Knowledge Center. + *

+ * MUST NOT be specified for protocol ibmmq or URI Scheme file:// or http:// + */ + @Nullable + @Builder.Default + @JsonProperty(value = "cipherSpec", defaultValue = "ANY") + @JsonPropertyDescription("The recommended cipher specification used to establish a TLS connection between the client and the IBM MQ queue manager. More information on SSL/TLS cipher specifications supported by IBM MQ can be found on this page in the IBM MQ Knowledge Center.") + private String cipherSpec = "ANY"; + + /** + * If multiEndpointServer is true then multiple connections can be workload balanced and applications should not make + * assumptions as to where messages are processed. Where message ordering, or affinity to specific message resources + * is necessary, a single endpoint (multiEndpointServer = false) may be required. + *

+ * MUST NOT be specified for URI Scheme file:// or http:// + */ + @Builder.Default + @JsonProperty(value = "multiEndpointServer", defaultValue = "false") + @JsonPropertyDescription("If multiEndpointServer is true then multiple connections can be workload balanced and applications should not make assumptions as to where messages are processed. Where message ordering, or affinity to specific message resources is necessary, a single endpoint (multiEndpointServer = false) may be required. MUST NOT be specified for URI Scheme file:// or http://") + private Boolean multiEndpointServer = false; + + /** + * The recommended value (in seconds) for the heartbeat sent to the queue manager during periods of inactivity. + * A value of zero means that no heart beats are sent. A value of 1 means that the client will use the value defined by the queue manager. + * More information on heart beat interval can be found on this page in the IBM MQ Knowledge Center. + *

+ * MUST be 0-999999 + */ + @Builder.Default + @javax.validation.constraints.Min( + value = 0, + message = "Heart beat interval must be greater or equals to 0" + ) + @javax.validation.constraints.Max( + value = 999999, + message = "Heart beat interval must be less or equals to 999999" + ) + @JsonProperty(value = "heartBeatInterval", defaultValue = "300") + @JsonPropertyDescription("The recommended value (in seconds) for the heartbeat sent to the queue manager during periods of inactivity. A value of zero means that no heart beats are sent. A value of 1 means that the client will use the value defined by the queue manager.") + private int heartBeatInterval = 300; + + /** + * The version of this binding. + */ + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/jms/JMSServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/jms/JMSServerBinding.java new file mode 100644 index 00000000..406ac082 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/jms/JMSServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.jms; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes JMS server binding. + * + * @version 0.1.0 + * @see JMS server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class JMSServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/kafka/KafkaServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/kafka/KafkaServerBinding.java new file mode 100644 index 00000000..b0122269 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/kafka/KafkaServerBinding.java @@ -0,0 +1,52 @@ +package com.asyncapi.v3.binding.server.kafka; + +import com.asyncapi.v3.binding.server.ServerBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Kafka server binding. + * + * @version 0.4.0 + * @see Kafka server binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes Kafka server binding.") +public class KafkaServerBinding extends ServerBinding { + + /** + * API URL for the Schema Registry used when producing Kafka messages (if a Schema Registry was used) + */ + @Nullable + @JsonProperty("schemaRegistryUrl") + @JsonPropertyDescription("API URL for the Schema Registry used when producing Kafka messages (if a Schema Registry was used)") + private String schemaRegistryUrl; + + /** + * MUST NOT be specified if schemaRegistryUrl is not specified + *

+ * The vendor of Schema Registry and Kafka serdes library that should be used (e.g. apicurio, confluent, ibm, or karapace) + */ + @Nullable + @JsonProperty("schemaRegistryVendor") + @JsonPropertyDescription("The vendor of Schema Registry and Kafka serdes library that should be used (e.g. apicurio, confluent, ibm, or karapace)") + private String schemaRegistryVendor; + + /** + * The version of this binding. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.4.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mercure/MercureServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mercure/MercureServerBinding.java new file mode 100644 index 00000000..6919e41d --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mercure/MercureServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.mercure; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Mercure server binding. + * + * @version 0.1.0 + * @see Mercure server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MercureServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt/MQTTServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt/MQTTServerBinding.java new file mode 100644 index 00000000..29a261d0 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt/MQTTServerBinding.java @@ -0,0 +1,68 @@ +package com.asyncapi.v3.binding.server.mqtt; + +import com.asyncapi.v3.binding.server.ServerBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes MQTT server binding. + *

+ * Contains information about the server representation in MQTT. + * + * @version 0.1.0 + * @see MQTT server binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes MQTT server binding.") +public class MQTTServerBinding extends ServerBinding { + + /** + * The client identifier. + */ + @Nullable + @JsonProperty("clientId") + @JsonPropertyDescription("The client identifier.") + private String clientId; + + /** + * Whether to create a persisten connection or not. When false, the connection will be persistent. + */ + @Nullable + @JsonProperty("cleanSession") + @JsonPropertyDescription("Whether to create a persisten connection or not. When false, the connection will be persistent.") + private Boolean cleanSession; + + /** + * Last Will and Testament configuration. + */ + @Nullable + @JsonProperty("lastWill") + @JsonPropertyDescription("Last Will and Testament configuration.") + private MQTTServerLastWillConfiguration lastWill; + + /** + * Interval in seconds of the longest period of time the broker and the client can endure without sending a message. + */ + @Nullable + @JsonProperty("keepAlive") + @JsonPropertyDescription("Interval in seconds of the longest period of time the broker and the client can endure without sending a message.") + private Integer keepAlive; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt/MQTTServerLastWillConfiguration.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt/MQTTServerLastWillConfiguration.java new file mode 100644 index 00000000..99e63a48 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt/MQTTServerLastWillConfiguration.java @@ -0,0 +1,65 @@ +package com.asyncapi.v3.binding.server.mqtt; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.jetbrains.annotations.Nullable; + +/** + * Describes MQTT server last will configuration. + * + * @version 0.1.0 + * @see MQTT server binding + * @author Pavel Bodiachevskii + */ +@Data +@EqualsAndHashCode +@NoArgsConstructor +@AllArgsConstructor +public class MQTTServerLastWillConfiguration { + + /** + * The topic where the Last Will and Testament message will be sent. + */ + @Nullable + @JsonProperty("topic") + @JsonPropertyDescription("The topic where the Last Will and Testament message will be sent.") + private String topic; + + /** + * Defines how hard the broker/client will try to ensure that the Last Will and Testament message is received. + * Its value MUST be either 0, 1 or 2. + */ + @Nullable + @javax.validation.constraints.Min( + value = 0, + message = "QoS must be greater or equals to 0." + ) + @javax.validation.constraints.Max( + value = 2, + message = "QoS must be lower or equals to 0." + ) + @JsonProperty("qos") + @JsonPropertyDescription("Defines how hard the broker/client will try to ensure that the Last Will and Testament message is received. Its value MUST be either 0, 1 or 2.") + private Integer qos; + + /** + * Last Will message. + */ + @Nullable + @JsonProperty("message") + @JsonPropertyDescription("Last Will message.") + private String message; + + /** + * Whether the broker should retain the Last Will and Testament message or not. + */ + @Nullable + @JsonProperty("retain") + @JsonPropertyDescription("Whether the broker should retain the Last Will and Testament message or not.") + private Boolean retain; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt5/MQTT5ServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt5/MQTT5ServerBinding.java new file mode 100644 index 00000000..a9522e04 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/mqtt5/MQTT5ServerBinding.java @@ -0,0 +1,29 @@ +package com.asyncapi.v3.binding.server.mqtt5; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.*; + +/** + * Describes MQTT 5 server binding. + * + * @version 0.2.0 + * @see MQTT 5 server binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MQTT5ServerBinding extends ServerBinding { + + /** + * TODO: support reference, Schema object + * Session Expiry Interval in seconds or a Schema Object containing the definition of the interval. + */ + private int sessionExpiryInterval; + + @Builder.Default + private String bindingVersion = "0.2.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/nats/NATSServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/nats/NATSServerBinding.java new file mode 100644 index 00000000..00331b04 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/nats/NATSServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.nats; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes NATS channel binding. + * + * @version 0.1.0 + * @see NATS server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class NATSServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/pulsar/PulsarServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/pulsar/PulsarServerBinding.java new file mode 100644 index 00000000..b67d8ef0 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/pulsar/PulsarServerBinding.java @@ -0,0 +1,43 @@ +package com.asyncapi.v3.binding.server.pulsar; + +import com.asyncapi.v3.binding.server.ServerBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Pulsar server binding. + * + * @version 0.1.0 + * @see Redis server binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes Pulsar server binding.") +public class PulsarServerBinding extends ServerBinding { + + /** + * The pulsar tenant. If omitted, "public" MUST be assumed. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "tenant", defaultValue = "public") + @JsonPropertyDescription("The pulsar tenant. If omitted, \"public\" MUST be assumed.") + private String tenant = "public"; + + /** + * The version of this binding. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/redis/RedisServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/redis/RedisServerBinding.java new file mode 100644 index 00000000..bea734b6 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/redis/RedisServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.redis; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Redis server binding. + * + * @version 0.1.0 + * @see Redis server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class RedisServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/sns/SNSServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/sns/SNSServerBinding.java new file mode 100644 index 00000000..87b7dc42 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/sns/SNSServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.sns; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes SNS server binding. + * + * @version 0.1.0 + * @see SNS server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class SNSServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/solace/SolaceServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/solace/SolaceServerBinding.java new file mode 100644 index 00000000..c98e8470 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/solace/SolaceServerBinding.java @@ -0,0 +1,44 @@ +package com.asyncapi.v3.binding.server.solace; + +import com.asyncapi.v3.binding.server.ServerBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Solace server binding. + * + * @version 0.3.0 + * @see Solace server binding + * @author Dennis Brinley, Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes Solace server binding.") +public class SolaceServerBinding extends ServerBinding { + + /** + * Message VPN of the Solace Broker + *

+ * e.g. msgVpn: solace-broker-msg-vpn + */ + @Nullable + @JsonProperty("msgVpn") + @JsonPropertyDescription("Message VPN of the Solace Broker") + private String msgVpn; + + /** + * The version of this binding. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.3.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/sqs/SQSServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/sqs/SQSServerBinding.java new file mode 100644 index 00000000..ce8f6962 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/sqs/SQSServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.sqs; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes SQS server binding. + * + * @version 0.1.0 + * @see SQS server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class SQSServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/stomp/STOMPServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/stomp/STOMPServerBinding.java new file mode 100644 index 00000000..871557c8 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/stomp/STOMPServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.stomp; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes STOMP server binding. + * + * @version 0.1.0 + * @see STOMP server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class STOMPServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ws/WebSocketsServerBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ws/WebSocketsServerBinding.java new file mode 100644 index 00000000..b76ab214 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/server/ws/WebSocketsServerBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.server.ws; + +import com.asyncapi.v3.binding.server.ServerBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes WebSockets server binding. + * + * @version 0.1.0 + * @see WebSockets server binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class WebSocketsServerBinding extends ServerBinding { +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/ibmmq/IBMMQServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/ibmmq/IBMMQServerBindingTest.kt new file mode 100644 index 00000000..67670a7b --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/ibmmq/IBMMQServerBindingTest.kt @@ -0,0 +1,26 @@ +package com.asyncapi.v3.binding.server.ibmmq + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class IBMMQServerBindingTest: SerDeTest() { + + override fun objectClass() = IBMMQServerBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/server/ibmmq/ibmmqServerBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/server/ibmmq/ibmmqServerBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json" + + override fun build(): IBMMQServerBinding { + return IBMMQServerBinding.builder() + .groupId("PRODCLSTR1") + .cipherSpec("ANY_TLS12_OR_HIGHER") + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/kafka/KafkaServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/kafka/KafkaServerBindingTest.kt new file mode 100644 index 00000000..dea2146f --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/kafka/KafkaServerBindingTest.kt @@ -0,0 +1,26 @@ +package com.asyncapi.v3.binding.server.kafka + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class KafkaServerBindingTest: SerDeTest() { + + override fun objectClass() = KafkaServerBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/server/kafka/kafkaServerBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/server/kafka/kafkaServerBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/server/kafka/kafkaServerBinding - wrongly extended.json" + + override fun build(): KafkaServerBinding { + return KafkaServerBinding.builder() + .schemaRegistryUrl("https://my-schema-registry.com") + .schemaRegistryVendor("confluent") + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/mqtt/MQTTServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/mqtt/MQTTServerBindingTest.kt new file mode 100644 index 00000000..9dccffeb --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/mqtt/MQTTServerBindingTest.kt @@ -0,0 +1,33 @@ +package com.asyncapi.v3.binding.server.mqtt + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class MQTTServerBindingTest: SerDeTest() { + + override fun objectClass() = MQTTServerBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/server/mqtt/mqttServerBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/server/mqtt/mqttServerBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/server/mqtt/mqttServerBinding - wrongly extended.json" + + override fun build(): MQTTServerBinding { + return MQTTServerBinding.builder() + .clientId("guest") + .cleanSession(true) + .lastWill(MQTTServerLastWillConfiguration( + "/last-wills", + 2, + "Guest gone offline.", + false + )) + .keepAlive(60) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/mqtt5/MQTT5ServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/mqtt5/MQTT5ServerBindingTest.kt new file mode 100644 index 00000000..23cd7f3d --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/mqtt5/MQTT5ServerBindingTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.binding.server.mqtt5 + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class MQTT5ServerBindingTest: SerDeTest() { + + override fun objectClass() = MQTT5ServerBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/server/mqtt5/mqtt5ServerBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/server/mqtt5/mqtt5ServerBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json" + + override fun build(): MQTT5ServerBinding { + return MQTT5ServerBinding.builder() + .sessionExpiryInterval(60) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/pulsar/PulsarServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/pulsar/PulsarServerBindingTest.kt new file mode 100644 index 00000000..1daee16b --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/pulsar/PulsarServerBindingTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.binding.server.pulsar + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class PulsarServerBindingTest: SerDeTest() { + + override fun objectClass() = PulsarServerBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/server/pulsar/pulsarServerBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/server/pulsar/pulsarServerBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/server/pulsar/pulsarServerBinding - wrongly extended.json" + + override fun build(): PulsarServerBinding { + return PulsarServerBinding.builder() + .tenant("contoso") + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/solace/SolaceServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/solace/SolaceServerBindingTest.kt new file mode 100644 index 00000000..a95a49d4 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/server/solace/SolaceServerBindingTest.kt @@ -0,0 +1,25 @@ +package com.asyncapi.v3.binding.server.solace + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class SolaceServerBindingTest: SerDeTest() { + + override fun objectClass() = SolaceServerBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/server/solace/solaceServerBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/server/solace/solaceServerBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/server/solace/solaceServerBinding - wrongly extended.json" + + override fun build(): SolaceServerBinding { + return SolaceServerBinding.builder() + .msgVpn("solace.private.net") + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding - extended.json new file mode 100644 index 00000000..53447913 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding - extended.json @@ -0,0 +1,13 @@ +{ + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json new file mode 100644 index 00000000..81ed7a44 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json @@ -0,0 +1,14 @@ +{ + "groupId": "PRODCLSTR1", + "ccdtQueueManagerName": "*", + "multiEndpointServer": false, + "heartBeatInterval": 300, + "cipherSpec": "ANY_TLS12_OR_HIGHER", + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding.json new file mode 100644 index 00000000..cde4b02d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/ibmmq/ibmmqServerBinding.json @@ -0,0 +1,8 @@ +{ + "groupId": "PRODCLSTR1", + "ccdtQueueManagerName": "*", + "multiEndpointServer": false, + "heartBeatInterval": 300, + "cipherSpec": "ANY_TLS12_OR_HIGHER", + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding - extended.json new file mode 100644 index 00000000..a0349c5c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding - extended.json @@ -0,0 +1,10 @@ +{ + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding - wrongly extended.json new file mode 100644 index 00000000..00eee56a --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding - wrongly extended.json @@ -0,0 +1,11 @@ +{ + "schemaRegistryUrl": "https://my-schema-registry.com", + "schemaRegistryVendor": "confluent", + "bindingVersion": "0.4.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding.json new file mode 100644 index 00000000..cc2f24e8 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/kafka/kafkaServerBinding.json @@ -0,0 +1,5 @@ +{ + "schemaRegistryUrl": "https://my-schema-registry.com", + "schemaRegistryVendor": "confluent", + "bindingVersion": "0.4.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding - extended.json new file mode 100644 index 00000000..304ed881 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding - extended.json @@ -0,0 +1,17 @@ +{ + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding - wrongly extended.json new file mode 100644 index 00000000..e3c8e972 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding - wrongly extended.json @@ -0,0 +1,18 @@ +{ + "clientId": "guest", + "cleanSession": true, + "lastWill": { + "topic": "/last-wills", + "qos": 2, + "message": "Guest gone offline.", + "retain": false + }, + "keepAlive": 60, + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding.json new file mode 100644 index 00000000..e5073c57 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt/mqttServerBinding.json @@ -0,0 +1,12 @@ +{ + "clientId": "guest", + "cleanSession": true, + "lastWill": { + "topic": "/last-wills", + "qos": 2, + "message": "Guest gone offline.", + "retain": false + }, + "keepAlive": 60, + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding - extended.json new file mode 100644 index 00000000..1104cd11 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding - extended.json @@ -0,0 +1,9 @@ +{ + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json new file mode 100644 index 00000000..ce682d11 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "sessionExpiryInterval": 60, + "bindingVersion": "0.2.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding.json new file mode 100644 index 00000000..1c422293 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/mqtt5/mqtt5ServerBinding.json @@ -0,0 +1,4 @@ +{ + "sessionExpiryInterval": 60, + "bindingVersion": "0.2.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding - extended.json new file mode 100644 index 00000000..de267c67 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding - extended.json @@ -0,0 +1,9 @@ +{ + "tenant" : "contoso", + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding - wrongly extended.json new file mode 100644 index 00000000..380c5cb2 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "tenant": "contoso", + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding.json new file mode 100644 index 00000000..bc86f5c2 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/pulsar/pulsarServerBinding.json @@ -0,0 +1,4 @@ +{ + "tenant": "contoso", + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding - extended.json new file mode 100644 index 00000000..4e9101f6 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding - extended.json @@ -0,0 +1,9 @@ +{ + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding - wrongly extended.json new file mode 100644 index 00000000..f6e4672f --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "msgVpn": "solace.private.net", + "bindingVersion": "0.3.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding.json new file mode 100644 index 00000000..1e86ad5a --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/server/solace/solaceServerBinding.json @@ -0,0 +1,4 @@ +{ + "msgVpn": "solace.private.net", + "bindingVersion": "0.3.0" +} \ No newline at end of file From a9f5b25b260b440688864f92958a78ee9fb9a4cf Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Thu, 28 Sep 2023 02:43:45 +0400 Subject: [PATCH 28/54] feat(3.0.0): Server --- .../server/ServerVariablesDeserializer.java | 25 ++ .../asyncapi/v3/_0_0/model/server/Server.java | 170 +++++++++++- .../v3/jackson/BindingsMapDeserializer.java | 44 +++ .../MapOfReferencesOrObjectsDeserializer.java | 80 ++++++ .../server/ServerBindingsDeserializer.java | 70 +++++ .../SecuritySchemesDeserializer.java | 24 ++ .../v3/_0_0/model/server/ServerTest.kt | 255 ++++++++++++++++++ .../3.0.0/model/server/server - extended.json | 104 +++++++ .../server/server - wrongly extended.json | 109 ++++++++ .../server with reference - extended.json | 107 ++++++++ ...ver with reference - wrongly extended.json | 108 ++++++++ .../model/server/server with reference.json | 102 +++++++ .../json/v3/3.0.0/model/server/server.json | 99 +++++++ 13 files changed, 1296 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/server/ServerVariablesDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/jackson/BindingsMapDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/jackson/MapOfReferencesOrObjectsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/server/ServerBindingsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/jackson/security_scheme/SecuritySchemesDeserializer.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/server/ServerTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/server/ServerVariablesDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/server/ServerVariablesDeserializer.java new file mode 100644 index 00000000..2f31028a --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/server/ServerVariablesDeserializer.java @@ -0,0 +1,25 @@ +package com.asyncapi.v3._0_0.jackson.model.server; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.server.ServerVariable; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +/** + * Serializes {@link com.asyncapi.v3._0_0.model.server.Server} variables map. + * + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +public class ServerVariablesDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return ServerVariable.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/Server.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/Server.java index aae42ced..669f1668 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/Server.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/server/Server.java @@ -1,4 +1,172 @@ package com.asyncapi.v3._0_0.model.server; -public class Server { +import com.asyncapi.v3.jackson.binding.server.ServerBindingsDeserializer; +import com.asyncapi.v3._0_0.jackson.model.server.ServerVariablesDeserializer; +import com.asyncapi.v3.binding.server.ServerBinding; +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.jackson.model.ExternalDocumentationDeserializer; +import com.asyncapi.v3._0_0.jackson.model.TagsDeserializer; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.asyncapi.v3._0_0.model.Tag; +import com.asyncapi.v3.jackson.security_scheme.SecuritySchemesDeserializer; +import com.asyncapi.v3.security_scheme.SecurityScheme; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.List; +import java.util.Map; + +/** + * An object representing a message broker, a server or any other kind of computer program capable of sending and/or + * receiving data. This object is used to capture details such as URIs, protocols and security configuration. + * Variable substitution can be used so that some details, for example usernames and passwords, can be injected by + * code generation tools. + * + * @version 3.0.0 + * @see Server + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class Server extends ExtendableObject { + + /** + * REQUIRED. + *

+ * The server host name. It MAY include the port. This field supports Server Variables. + * Variable substitutions will be made when a variable is named in {braces}. + */ + @NotNull + @JsonProperty + @Builder.Default + private String host = ""; + + /** + * REQUIRED. + *

+ * The protocol this URL supports for connection. Supported protocol include, but are not limited to: + * amqp, amqps, http, https, jms, kafka, kafka-secure, mqtt, secure-mqtt, stomp, stomps, ws, wss. + */ + @NotNull + @JsonProperty + @Builder.Default + private String protocol = ""; + + /** + * The version of the protocol used for connection. For instance: AMQP 0.9.1, HTTP 2.0, Kafka 1.0.0, etc. + */ + @Nullable + @JsonProperty + private String protocolVersion; + + /** + * The path to a resource in the host. This field supports Server Variables. + * Variable substitutions will be made when a variable is named in {braces}. + */ + @Nullable + @JsonProperty + private String pathname; + + /** + * An optional string describing the host designated by the URL. CommonMark syntax MAY be used for rich text + * representation. + */ + @Nullable + @JsonProperty + private String description; + + /** + * A human-friendly title for the server. + */ + @Nullable + @JsonProperty + private String title; + + /** + * A short summary of the server. + */ + @Nullable + @JsonProperty + private String summary; + + /** + * A map between a variable name and its value. + * The value is used for substitution in the server's host and pathname template. + *

+ * MUST BE: + *

    + *
  • {@link ServerVariable}
  • + *
  • {@link Reference}
  • + *
+ */ + @Nullable + @JsonProperty + @JsonDeserialize(using = ServerVariablesDeserializer.class) + private Map variables; + + /** + * A declaration of which security schemes can be used with this server. The list of values includes alternative + * security scheme objects that can be used. Only one of the security scheme objects need to be satisfied to + * authorize a connection or operation. + *

+ * MUST BE: + *

    + *
  • {@link SecurityScheme}
  • + *
  • {@link Reference}
  • + *
+ */ + @Nullable + @JsonProperty + @JsonDeserialize(using = SecuritySchemesDeserializer.class) + private List security; + + /** + * A list of tags for logical grouping and categorization of servers. + *

+ * MUST BE: + *

    + *
  • {@link Tag}
  • + *
  • {@link Reference}
  • + *
+ */ + @Nullable + @JsonProperty + @JsonDeserialize(using = TagsDeserializer.class) + private List tags; + + /** + * Additional external documentation of the exposed API. + *

+ * MUST BE: + *

    + *
  • {@link ExternalDocumentation}
  • + *
  • {@link Reference}
  • + *
+ */ + @Nullable + @JsonProperty + @JsonDeserialize(using = ExternalDocumentationDeserializer.class) + private Object externalDocs; + + /** + * A map where the keys describe the name of the protocol and the values describe protocol-specific definitions + * for the server. + *

+ * MUST be one of: + *

    + *
  • {@link Reference}
  • + *
  • {@link ServerBinding}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = ServerBindingsDeserializer.class) + private Map bindings; + } diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/BindingsMapDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/BindingsMapDeserializer.java new file mode 100644 index 00000000..d4e782c6 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/BindingsMapDeserializer.java @@ -0,0 +1,44 @@ +package com.asyncapi.v3.jackson; + +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; +import com.fasterxml.jackson.databind.JsonNode; + +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + +/** + * Deserializes AsyncAPI bindings map. + */ +public abstract class BindingsMapDeserializer extends JsonDeserializer> { + + public abstract Object chooseKnownPojo(String bindingKey, JsonNode binding, ObjectCodec objectCodec) throws IOException; + + @Override + public Map deserialize( + JsonParser p, + DeserializationContext ctxt + ) throws IOException, JsonProcessingException { + ObjectCodec objectCodec = p.getCodec(); + JsonNode node = objectCodec.readTree(p); + + Map bindings = new HashMap<>(); + + node.fieldNames().forEachRemaining( + fieldName -> { + try { + bindings.put(fieldName, chooseKnownPojo(fieldName, node.get(fieldName), objectCodec)); + } catch (IOException e) { + e.printStackTrace(); + } + } + ); + + return bindings; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/MapOfReferencesOrObjectsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/MapOfReferencesOrObjectsDeserializer.java new file mode 100644 index 00000000..53d967a7 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/MapOfReferencesOrObjectsDeserializer.java @@ -0,0 +1,80 @@ +package com.asyncapi.v3.jackson; + +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; +import com.fasterxml.jackson.databind.JsonNode; + +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + +/** + * Deserializes AsyncAPI map of parameters + * @param object + */ +public abstract class MapOfReferencesOrObjectsDeserializer extends JsonDeserializer> { + + abstract public Class objectTypeClass(); + + abstract public Class referenceClass(); + + @Override + public Map deserialize(JsonParser jsonParser, + DeserializationContext deserializationContext + ) throws IOException, JsonProcessingException { + ObjectCodec objectCodec = jsonParser.getCodec(); + JsonNode map = objectCodec.readTree(jsonParser); + + Map parameters = new HashMap<>(); + + map.fieldNames().forEachRemaining( + fieldName -> { + /* + Problem: + Both, Reference class and Schema class have $ref field. + So, this is only reason why I receive next exception: + "com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: + Unrecognized field "title" (class com.asyncapi.v2._6_0.model.Reference), + not marked as ignorable (one known property: "$ref"])" + in case when Schema contains $ref. + Solution: + Try to deserialize reference. In case of exception, try to deserialize it as given ObjectType. In case of + one more exception, throw it. + TODO: Think how to improve. + */ + try { + parameters.put(fieldName, chooseKnownPojo(map.get(fieldName), objectCodec)); + } catch (IOException ignore) { + try { + parameters.put(fieldName, readAsObject(map.get(fieldName), objectCodec)); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + ); + + return parameters; + } + + private Object chooseKnownPojo(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + JsonNode ref = jsonNode.get("$ref"); + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + if (ref != null) { + return jsonParser.readValueAs(referenceClass()); + } else { + return jsonParser.readValueAs(objectTypeClass()); + } + } + } + + private Object readAsObject(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + return jsonParser.readValueAs(objectTypeClass()); + } + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/server/ServerBindingsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/server/ServerBindingsDeserializer.java new file mode 100644 index 00000000..c6cfbe04 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/server/ServerBindingsDeserializer.java @@ -0,0 +1,70 @@ +package com.asyncapi.v3.jackson.binding.server; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3.binding.server.amqp.AMQPServerBinding; +import com.asyncapi.v3.binding.server.amqp1.AMQP1ServerBinding; +import com.asyncapi.v3.binding.server.anypointmq.AnypointMQServerBinding; +import com.asyncapi.v3.binding.server.googlepubsub.GooglePubSubServerBinding; +import com.asyncapi.v3.binding.server.http.HTTPServerBinding; +import com.asyncapi.v3.binding.server.ibmmq.IBMMQServerBinding; +import com.asyncapi.v3.binding.server.jms.JMSServerBinding; +import com.asyncapi.v3.binding.server.kafka.KafkaServerBinding; +import com.asyncapi.v3.binding.server.mercure.MercureServerBinding; +import com.asyncapi.v3.binding.server.mqtt.MQTTServerBinding; +import com.asyncapi.v3.binding.server.mqtt5.MQTT5ServerBinding; +import com.asyncapi.v3.binding.server.nats.NATSServerBinding; +import com.asyncapi.v3.binding.server.pulsar.PulsarServerBinding; +import com.asyncapi.v3.binding.server.redis.RedisServerBinding; +import com.asyncapi.v3.binding.server.sns.SNSServerBinding; +import com.asyncapi.v3.binding.server.solace.SolaceServerBinding; +import com.asyncapi.v3.binding.server.sqs.SQSServerBinding; +import com.asyncapi.v3.binding.server.stomp.STOMPServerBinding; +import com.asyncapi.v3.binding.server.ws.WebSocketsServerBinding; +import com.asyncapi.v3.jackson.BindingsMapDeserializer; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.JsonNode; + +import java.io.IOException; + +/** + * Serializes server bindings map. + * + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +public class ServerBindingsDeserializer extends BindingsMapDeserializer { + + @Override + public Object chooseKnownPojo(String bindingKey, JsonNode binding, ObjectCodec objectCodec) throws IOException { + try (JsonParser jsonParser = binding.traverse(objectCodec)) { + if (binding.get("$ref" ) != null) { + return jsonParser.readValueAs(Reference.class); + } + + switch (bindingKey) { + case "amqp": return jsonParser.readValueAs(AMQPServerBinding.class); + case "amqp1": return jsonParser.readValueAs(AMQP1ServerBinding.class); + case "anypointmq": return jsonParser.readValueAs(AnypointMQServerBinding.class); + case "googlepubsub": return jsonParser.readValueAs(GooglePubSubServerBinding.class); + case "http": return jsonParser.readValueAs(HTTPServerBinding.class); + case "ibmmq": return jsonParser.readValueAs(IBMMQServerBinding.class); + case "jms": return jsonParser.readValueAs(JMSServerBinding.class); + case "kafka": return jsonParser.readValueAs(KafkaServerBinding.class); + case "mercure": return jsonParser.readValueAs(MercureServerBinding.class); + case "mqtt": return jsonParser.readValueAs(MQTTServerBinding.class); + case "mqtt5": return jsonParser.readValueAs(MQTT5ServerBinding.class); + case "nats": return jsonParser.readValueAs(NATSServerBinding.class); + case "pulsar": return jsonParser.readValueAs(PulsarServerBinding.class); + case "redis": return jsonParser.readValueAs(RedisServerBinding.class); + case "sns": return jsonParser.readValueAs(SNSServerBinding.class); + case "solace": return jsonParser.readValueAs(SolaceServerBinding.class); + case "sqs": return jsonParser.readValueAs(SQSServerBinding.class); + case "stomp": return jsonParser.readValueAs(STOMPServerBinding.class); + case "ws": return jsonParser.readValueAs(WebSocketsServerBinding.class); + default: return null; + } + } + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/security_scheme/SecuritySchemesDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/security_scheme/SecuritySchemesDeserializer.java new file mode 100644 index 00000000..93a1429b --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/security_scheme/SecuritySchemesDeserializer.java @@ -0,0 +1,24 @@ +package com.asyncapi.v3.jackson.security_scheme; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3.jackson.ListOfReferencesOrObjectsDeserializer; +import com.asyncapi.v3.security_scheme.SecurityScheme; + +/** + * Deserializes security schemes. + * + * @author Pavel Bodiachevskii + */ +public class SecuritySchemesDeserializer extends ListOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return SecurityScheme.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/server/ServerTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/server/ServerTest.kt new file mode 100644 index 00000000..cee89d7a --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/server/ServerTest.kt @@ -0,0 +1,255 @@ +package com.asyncapi.v3._0_0.model.server + +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3._0_0.model.ExternalDocumentationTest +import com.asyncapi.v3._0_0.model.Tag +import com.asyncapi.v3.binding.server.amqp1.AMQP1ServerBinding +import com.asyncapi.v3.binding.server.anypointmq.AnypointMQServerBinding +import com.asyncapi.v3.binding.server.googlepubsub.GooglePubSubServerBinding +import com.asyncapi.v3.binding.server.http.HTTPServerBinding +import com.asyncapi.v3.binding.server.ibmmq.IBMMQServerBinding +import com.asyncapi.v3.binding.server.jms.JMSServerBinding +import com.asyncapi.v3.binding.server.kafka.KafkaServerBinding +import com.asyncapi.v3.binding.server.mercure.MercureServerBinding +import com.asyncapi.v3.binding.server.mqtt.MQTTServerBinding +import com.asyncapi.v3.binding.server.mqtt.MQTTServerLastWillConfiguration +import com.asyncapi.v3.binding.server.mqtt5.MQTT5ServerBinding +import com.asyncapi.v3.binding.server.nats.NATSServerBinding +import com.asyncapi.v3.binding.server.pulsar.PulsarServerBinding +import com.asyncapi.v3.binding.server.redis.RedisServerBinding +import com.asyncapi.v3.binding.server.sns.SNSServerBinding +import com.asyncapi.v3.binding.server.solace.SolaceServerBinding +import com.asyncapi.v3.binding.server.sqs.SQSServerBinding +import com.asyncapi.v3.binding.server.stomp.STOMPServerBinding +import com.asyncapi.v3.binding.server.ws.WebSocketsServerBinding +import com.asyncapi.v3.security_scheme.ApiKeySecuritySchemeTest +import com.asyncapi.v3.security_scheme.http.HttpSecuritySchemeBearerTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class ServerTest: SerDeTest() { + + override fun objectClass() = Server::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/server/server.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/server/server - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/server/server - wrongly extended.json" + + override fun build(): Server { + return Server.builder() + .host("{username}.gigantic-server.com:{port}/{basePath}") + .protocol("secure-mqtt") + .protocolVersion("5") + .pathname("/messages") + .description("The production API server") + .title("secure-mqtt API server") + .summary("API server") + .variables(mapOf( + Pair("username", ServerVariable.builder() + .defaultValue("demo") + .description("This value is assigned by the service provider, in this example `gigantic-server.com`") + .build()), + Pair("port", ServerVariable.builder() + .enumValues(listOf("8883", "8884")) + .defaultValue("8883") + .build()), + Pair("basePath", Reference("#/components/serverVariables/basePath")) + )) + .security(listOf( + ApiKeySecuritySchemeTest().build(), + HttpSecuritySchemeBearerTest().build() + )) + .tags(listOf( + Tag("env:staging", "This environment is a replica of the production environment", null) + )) + .externalDocs(ExternalDocumentationTest().build()) + .bindings(bindings()) + .build() + } + + companion object { + @JvmStatic + fun bindings(): Map { + return mapOf( + Pair("amqp", Reference("#/components/serverBindings/amqp")), + Pair("amqp1", AMQP1ServerBinding()), + Pair("anypointmq", AnypointMQServerBinding()), + Pair("googlepubsub", GooglePubSubServerBinding()), + Pair("http", HTTPServerBinding()), + Pair( + "ibmmq", + IBMMQServerBinding.builder() + .groupId("PRODCLSTR1") + .cipherSpec("ANY_TLS12_OR_HIGHER") + .build() + ), + Pair("jms", JMSServerBinding()), + Pair( + "kafka", + KafkaServerBinding.builder() + .schemaRegistryUrl("https://my-schema-registry.com") + .schemaRegistryVendor("confluent") + .build() + ), + Pair("mercure", MercureServerBinding()), + Pair( + "mqtt", + MQTTServerBinding.builder() + .clientId("guest") + .cleanSession(true) + .lastWill(MQTTServerLastWillConfiguration( + "/last-wills", + 2, + "Guest gone offline.", + false + )) + .keepAlive(60) + .build() + ), + Pair( + "mqtt5", + MQTT5ServerBinding.builder() + .sessionExpiryInterval(60) + .build() + ), + Pair("nats", NATSServerBinding()), + Pair( + "pulsar", + PulsarServerBinding.builder() + .tenant("contoso") + .build() + ), + Pair("redis", RedisServerBinding()), + Pair("sns", SNSServerBinding()), + Pair( + "solace", + SolaceServerBinding.builder() + .msgVpn("solace.private.net") + .build() + ), + Pair("sqs", SQSServerBinding()), + Pair("stomp", STOMPServerBinding()), + Pair("ws", WebSocketsServerBinding()), + ) + } + } + +} + +class ServerTestWithReference: SerDeTest() { + + override fun objectClass() = Server::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/server/server with reference.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/server/server with reference - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/server/server with reference - wrongly extended.json" + + override fun build(): Server { + return Server.builder() + .host("{username}.gigantic-server.com:{port}/{basePath}") + .protocol("secure-mqtt") + .protocolVersion("5") + .pathname("/messages") + .description("The production API server") + .title("secure-mqtt API server") + .summary("API server") + .variables(mapOf( + Pair("username", ServerVariable.builder() + .defaultValue("demo") + .description("This value is assigned by the service provider, in this example `gigantic-server.com`") + .build()), + Pair("port", ServerVariable.builder() + .enumValues(listOf("8883", "8884")) + .defaultValue("8883") + .build()), + Pair("basePath", Reference("#/components/serverVariables/basePath")) + )) + .security(listOf( + ApiKeySecuritySchemeTest().build(), + HttpSecuritySchemeBearerTest().build(), + Reference("#/components/securitySchemes/openId") + )) + .tags(listOf( + Tag("env:staging", "This environment is a replica of the production environment", null), + Reference("#/components/tags/tag_name") + )) + .externalDocs(Reference("#/components/externalDocs/externalDoc")) + .bindings(bindings()) + .build() + } + + companion object { + @JvmStatic + fun bindings(): Map { + return mapOf( + Pair("amqp", Reference("#/components/serverBindings/amqp")), + Pair("amqp1", AMQP1ServerBinding()), + Pair("anypointmq", AnypointMQServerBinding()), + Pair("googlepubsub", GooglePubSubServerBinding()), + Pair("http", HTTPServerBinding()), + Pair( + "ibmmq", + IBMMQServerBinding.builder() + .groupId("PRODCLSTR1") + .cipherSpec("ANY_TLS12_OR_HIGHER") + .build() + ), + Pair("jms", JMSServerBinding()), + Pair( + "kafka", + KafkaServerBinding.builder() + .schemaRegistryUrl("https://my-schema-registry.com") + .schemaRegistryVendor("confluent") + .build() + ), + Pair("mercure", MercureServerBinding()), + Pair( + "mqtt", + MQTTServerBinding.builder() + .clientId("guest") + .cleanSession(true) + .lastWill(MQTTServerLastWillConfiguration( + "/last-wills", + 2, + "Guest gone offline.", + false + )) + .keepAlive(60) + .build() + ), + Pair( + "mqtt5", + MQTT5ServerBinding.builder() + .sessionExpiryInterval(60) + .build() + ), + Pair("nats", NATSServerBinding()), + Pair( + "pulsar", + PulsarServerBinding.builder() + .tenant("contoso") + .build() + ), + Pair("redis", RedisServerBinding()), + Pair("sns", SNSServerBinding()), + Pair( + "solace", + SolaceServerBinding.builder() + .msgVpn("solace.private.net") + .build() + ), + Pair("sqs", SQSServerBinding()), + Pair("stomp", STOMPServerBinding()), + Pair("ws", WebSocketsServerBinding()), + ) + } + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - extended.json new file mode 100644 index 00000000..7857d6b2 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - extended.json @@ -0,0 +1,104 @@ +{ + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - wrongly extended.json new file mode 100644 index 00000000..7abed521 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - wrongly extended.json @@ -0,0 +1,109 @@ +{ + "host": "{username}.gigantic-server.com:{port}/{basePath}", + "protocol": "secure-mqtt", + "protocolVersion": "5", + "pathname": "/messages", + "description": "The production API server", + "title": "secure-mqtt API server", + "summary": "API server", + "variables": { + "username": { + "default": "demo", + "description": "This value is assigned by the service provider, in this example `gigantic-server.com`" + }, + "port": { + "enum": [ + "8883", + "8884" + ], + "default": "8883" + }, + "basePath": { + "$ref": "#/components/serverVariables/basePath" + } + }, + "security": [ + { + "type": "httpApiKey", + "description": "httpApiKey", + "name": "api_key", + "in": "header" + }, + { + "type": "http", + "description": "http", + "scheme": "bearer", + "bearerFormat": "JWT" + } + ], + "tags": [ + { + "name": "env:staging", + "description": "This environment is a replica of the production environment" + } + ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings": { + "amqp": { + "$ref": "#/components/serverBindings/amqp" + }, + "amqp1": {}, + "anypointmq": {}, + "googlepubsub": {}, + "http": {}, + "ibmmq": { + "groupId": "PRODCLSTR1", + "ccdtQueueManagerName": "*", + "multiEndpointServer": false, + "heartBeatInterval": 300, + "cipherSpec": "ANY_TLS12_OR_HIGHER", + "bindingVersion": "0.1.0" + }, + "jms": {}, + "kafka": { + "schemaRegistryUrl": "https://my-schema-registry.com", + "schemaRegistryVendor": "confluent", + "bindingVersion": "0.4.0" + }, + "mercure": {}, + "mqtt": { + "clientId": "guest", + "cleanSession": true, + "lastWill": { + "topic": "/last-wills", + "qos": 2, + "message": "Guest gone offline.", + "retain": false + }, + "keepAlive": 60, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "sessionExpiryInterval": 60, + "bindingVersion": "0.2.0" + }, + "nats": {}, + "pulsar": { + "tenant": "contoso", + "bindingVersion": "0.1.0" + }, + "redis": {}, + "sns": {}, + "solace": { + "msgVpn": "solace.private.net", + "bindingVersion": "0.3.0" + }, + "sqs": {}, + "stomp": {}, + "ws": {} + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - extended.json new file mode 100644 index 00000000..14969aaa --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - extended.json @@ -0,0 +1,107 @@ +{ + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + }, { + "$ref" : "#/components/securitySchemes/openId" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag_name" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/externalDoc" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - wrongly extended.json new file mode 100644 index 00000000..e0e49b6d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - wrongly extended.json @@ -0,0 +1,108 @@ +{ + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + }, { + "$ref" : "#/components/securitySchemes/openId" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag_name" + }], + "externalDocs" : { + "$ref" : "#/components/externalDocs/externalDoc" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference.json new file mode 100644 index 00000000..3dffe38d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference.json @@ -0,0 +1,102 @@ +{ + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + }, { + "$ref" : "#/components/securitySchemes/openId" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag_name" + }], + "externalDocs" : { + "$ref" : "#/components/externalDocs/externalDoc" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server.json new file mode 100644 index 00000000..387253d0 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server.json @@ -0,0 +1,99 @@ +{ + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } +} \ No newline at end of file From 250e413b3e6635f2f7066e4a95c6aa831d61a759 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Thu, 28 Sep 2023 23:23:53 +0400 Subject: [PATCH 29/54] feat(3.0.0): Channel parameter --- .../v3/_0_0/model/channel/Parameter.java | 56 +++++++++++++++++++ .../v3/_0_0/model/channel/ParameterTest.kt | 29 ++++++++++ .../model/channel/parameter - extended.json | 12 ++++ .../channel/parameter - wrongly extended.json | 23 ++++++++ .../v3/3.0.0/model/channel/parameter.json | 17 ++++++ 5 files changed, 137 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/Parameter.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/ParameterTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/Parameter.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/Parameter.java new file mode 100644 index 00000000..c624bb4d --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/Parameter.java @@ -0,0 +1,56 @@ +package com.asyncapi.v3._0_0.model.channel; + +import com.asyncapi.v3.ExtendableObject; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * Describes a parameter included in a channel address. + * + * @version 3.0.0 + * @see Parameter + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class Parameter extends ExtendableObject { + + /** + * An optional description for the parameter. CommonMark syntax MAY be used for rich text representation. + */ + @Nullable + private String description; + + /** + * The default value to use for substitution, and to send, if an alternate value is not supplied. + */ + @Nullable + @JsonProperty("default") + private String defaultValue; + + /** + * An enumeration of string values to be used if the substitution options are from a limited set. + */ + @Nullable + @JsonProperty("enum") + private List enumValues; + + /** + * An array of examples of the parameter value. + */ + @Nullable + private List examples; + + /** + * A runtime expression that specifies the location of the parameter value. + */ + @Nullable + private String location; + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/ParameterTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/ParameterTest.kt new file mode 100644 index 00000000..b96bb44f --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/ParameterTest.kt @@ -0,0 +1,29 @@ +package com.asyncapi.v3._0_0.model.channel + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class ParameterTest: SerDeTest() { + + override fun objectClass() = Parameter::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/parameter.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/parameter - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/parameter - wrongly extended.json" + + override fun build(): Parameter { + return Parameter.builder() + .description("Id of the user.") + .defaultValue("0e822ca6-5311-4d4c-b409-993a1820e689") + .enumValues(listOf("0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0")) + .examples(listOf("0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0")) + .location("\$message.payload#/user/id") + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter - extended.json new file mode 100644 index 00000000..21886304 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter - extended.json @@ -0,0 +1,12 @@ +{ + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter - wrongly extended.json new file mode 100644 index 00000000..e51b19cc --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter - wrongly extended.json @@ -0,0 +1,23 @@ +{ + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter.json new file mode 100644 index 00000000..da2f7860 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/parameter.json @@ -0,0 +1,17 @@ +{ + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" +} \ No newline at end of file From 1d2d6d2265b31965e56cf7495437d9151a874b1e Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Fri, 29 Sep 2023 00:09:49 +0400 Subject: [PATCH 30/54] feat(3.0.0): Schema --- .../java/com/asyncapi/v3/schema/Schema.java | 691 ++++++++++++++++++ 1 file changed, 691 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/schema/Schema.java diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/schema/Schema.java b/asyncapi-core/src/main/java/com/asyncapi/v3/schema/Schema.java new file mode 100644 index 00000000..7085d8e1 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/schema/Schema.java @@ -0,0 +1,691 @@ +package com.asyncapi.v3.schema; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.jackson.schema.SchemasAdditionalPropertiesDeserializer; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.math.BigDecimal; +import java.util.List; +import java.util.Map; + +// TODO: Finish. Not all properties are present. +// TODO: Write tests + +/** + * The Schema Object allows the definition of input and output data types. These types can be objects, + * but also primitives and arrays. This object is a superset of the JSON Schema Specification Draft 07. + *
+ * Further information about the properties can be found in JSON Schema Core and JSON Schema Validation. + * Unless stated otherwise, the property definitions follow the JSON Schema specification as referenced here. + *

+ * The AsyncAPI Schema Object is a JSON Schema vocabulary which extends JSON Schema Core and Validation vocabularies. + * As such, any keyword available for those vocabularies is by definition available in AsyncAPI, and will work the + * exact same way, including but not limited to defined properties. + *

+ * New properties may appear in this class after community requests. + * + * @see AnyncAPI Schema Object + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class Schema extends ExtendableObject { + + /* + Schema Annotations + + Schema validation is a useful mechanism for annotating instance data + with additional information. The rules for determining when and how + annotations are associated with an instance are outlined in section + 3.3. + + These general-purpose annotation keywords provide commonly used + information for documentation and user interface display purposes. + They are not intended to form a comprehensive set of features. + Rather, additional vocabularies can be defined for more complex + annotation-based applications. + */ + + /** + * The value of these keyword MUST be a string. + *

+ * This keywords can be used to decorate a user interface with information about the data produced by this user + * interface. + *

+ * A title will preferably be short + */ + @Nullable + @JsonProperty + public String title; + + /** + * The value of these keyword MUST be a string. + *

+ * This property definition was adjusted to the AsyncAPI Specification. + * CommonMark syntax can be used for rich text representation. + *

+ * This keywords can be used to decorate a user interface with information about the data produced by this user + * interface. + *

+ * A description will provide explanation about the purpose of the instance described by this schema. + */ + @Nullable + @JsonProperty + public String description; + + /** + * There are no restrictions placed on the value of this keyword. When multiple occurrences of this keyword are + * applicable to a single sub-instance, implementations SHOULD remove duplicates. + *

+ * This keyword can be used to supply a default JSON value associated with a particular schema. + * It is RECOMMENDED that a default value be valid against the associated schema. + *

+ * This property definition was adjusted to the AsyncAPI Specification. + * The default value represents what would be assumed by the consumer of the input as the value of the schema if one + * is not provided. Unlike JSON Schema, the value MUST conform to the defined type for the Schema Object defined at + * the same level. For example, of type is string, then default can be "foo" but cannot be 1. + */ + @Nullable + @JsonProperty("default") + public Object defaultValue; + + /** + * The value of this keyword MUST be a boolean. When multiple occurrences of this keyword are applicable to a + * single sub-instance, the resulting value MUST be true if any occurrence specifies a true value, and MUST be false otherwise. + *

+ * If "readOnly" has a value of boolean true, it indicates that the value of the instance is managed exclusively by the owning authority, + * and attempts by an application to modify the value of this property are expected to be ignored or rejected by that owning authority. + *

+ * An instance document that is marked as "readOnly for the entire document MAY be ignored if sent to the owning authority, or MAY + * result in an error, at the authority's discretion. + *

+ * For example, "readOnly" would be used to mark a database-generated serial number as read-only, while "writeOnly" would be used to mark a + * password input field. + *

+ * This keyword can be used to assist in user interface instance generation. In particular, an application MAY choose to use a widget + * that hides input values as they are typed for write-only fields. + *

+ * Omitting this keyword has the same behavior as values of false. + */ + @Nullable + @JsonProperty + public Boolean readOnly; + + /** + * The value of this keyword MUST be a boolean. When multiple occurrences of this keyword are applicable to a + * single sub-instance, the resulting value MUST be true if any occurrence specifies a true value, and MUST be false otherwise. + *

+ * If "writeOnly" has a value of boolean true, it indicates that the value is never present when the instance is retrieved from the owning + * authority. It can be present when sent to the owning authority to update or create the document (or the resource it represents), but it + * will not be included in any updated or newly created version of the instance. + *

+ * An instance document that is marked as "writeOnly" for the entire document MAY be returned as a blank document of some sort, or MAY + * produce an error upon retrieval, or have the retrieval request ignored, at the authority's discretion. + *

+ * This keyword can be used to assist in user interface instance generation. In particular, an application MAY choose to use a widget + * that hides input values as they are typed for write-only fields. + *

+ * Omitting this keyword has the same behavior as values of false. + */ + @Nullable + @JsonProperty + public Boolean writeOnly; + + /** + * The value of this keyword MUST be an array. There are no restrictions placed on the values within the array. + * When multiple occurrences of this keyword are applicable to a single sub-instance, implementations MUST provide + * a flat array of all values rather than an array of arrays. + *

+ * This keyword can be used to provide sample JSON values associated with a particular schema, for the purpose of + * illustrating usage. It is RECOMMENDED that these values be valid against the associated schema. + *

+ * Implementations MAY use the value(s) of "default", if present, as an additional example. If "examples" is absent, + * "default" MAY still be used in this manner. + */ + @Nullable + @JsonProperty + public List examples; + + @Nullable + @JsonProperty("$ref") + private String ref; + + /* + String-Encoding Non-JSON Data + + Foreword + + Properties defined in this section indicate that an instance contains + non-JSON data encoded in a JSON string. They describe the type of + content and how it is encoded. + + These properties provide additional information required to interpret + JSON data as rich multimedia documents. + + Implementation Requirements + + The content keywords function as both annotations (Section 3.3) and + as assertions (Section 3.2). While no special effort is required to + implement them as annotations conveying how applications can + interpret the data in the string, implementing validation of + conformance to the media type and encoding is non-trivial. + + Implementations MAY support the "contentMediaType" and + "contentEncoding" keywords as validation assertions. Should they + choose to do so, they SHOULD offer an option to disable validation + for these keywords. + */ + + /** + * If the instance value is a string, this property defines that the string SHOULD be interpreted as binary data and + * decoded using the encoding named by this property. RFC 2045, Sec 6.1 [RFC2045] lists the possible values for this property. + *

+ * The value of this property MUST be a string. + *

+ * The value of this property SHOULD be ignored if the instance described is not a string. + */ + @Nullable + @JsonProperty + private String contentEncoding; + + /** + * The value of this property must be a media type, as defined by RFC 2046 [RFC2046]. This property defines the media + * type of instances which this schema defines. + *

+ * The value of this property MUST be a string. + *

+ * The value of this property SHOULD be ignored if the instance described is not a string. + *

+ * If the "contentEncoding" property is not present, but the instance value is a string, then the value of this property SHOULD specify a + * text document type, and the character set SHOULD be the character set into which the JSON string value was decoded (for which the default + * is Unicode). + */ + @Nullable + @JsonProperty + private String contentMediaType; + + /* + Validation. + */ + + /* + Validation Keywords for Any Instance Type + */ + + /** + * The value of this keyword MUST be either a string or an array. If it is an array, elements of the array MUST + * be strings and MUST be unique. + *
+ * String values MUST be one of the six primitive types ("null", "boolean", "object", "array", "number", or "string"), + * or "integer" which matches any number with a zero fractional part. + *
+ * An instance validates if and only if the instance is in any of the sets listed for this keyword. + * + */ + @Nullable + @JsonProperty + public Object type; + + /** + * The value of this keyword MUST be an array. This array SHOULD have at least one element. Elements in the array SHOULD be unique. + *
+ * An instance validates successfully against this keyword if its value is equal to one of the elements in this keyword's array value. + *
+ * Elements in the array might be of any value, including null. + */ + @Nullable + @JsonProperty("enum") + public List enumValue; + + /** + * The value of this keyword MAY be of any type, including null. + *
+ * An instance validates successfully against this keyword if its value is equal to the value of the keyword. + */ + @Nullable + @JsonProperty("const") + public Object constValue; + + /* + Validation Keywords for Numeric Instances (number and integer) + */ + + /** + * The value of "multipleOf" MUST be a number, strictly greater than 0. + *
+ * A numeric instance is valid only if division by this keyword's value results in an integer. + */ + @Nullable + @JsonProperty + public Integer multipleOf; + + /** + * The value of "maximum" MUST be a number, representing an inclusive upper limit for a numeric instance. + *
+ * If the instance is a number, then this keyword validates only if the instance is less than or exactly equal to "maximum". + */ + @Nullable + @JsonProperty + public BigDecimal maximum; + + /** + * The value of "exclusiveMaximum" MUST be number, representing an exclusive upper limit for a numeric instance. + *
+ * If the instance is a number, then the instance is valid only if it has a value strictly less than (not equal to) "exclusiveMaximum". + */ + @Nullable + @JsonProperty + public BigDecimal exclusiveMaximum; + + /** + * The value of "minimum" MUST be a number, representing an inclusive lower limit for a numeric instance. + *
+ * If the instance is a number, then this keyword validates only if the instance is greater than or exactly equal to "minimum". + */ + @Nullable + @JsonProperty + public BigDecimal minimum; + + /** + * The value of "exclusiveMinimum" MUST be number, representing an exclusive lower limit for a numeric instance. + *
+ * If the instance is a number, then the instance is valid only if it has a value strictly greater than (not equal to) "exclusiveMinimum". + */ + @Nullable + @JsonProperty + public BigDecimal exclusiveMinimum; + + /* + Validation Keywords for Strings + */ + + /** + * The value of this keyword MUST be a non-negative integer. + *
+ * A string instance is valid against this keyword if its length is less than, or equal to, the value of this keyword. + *
+ * The length of a string instance is defined as the number of its characters as defined by RFC 7159 [RFC7159]. + */ + @Nullable + @JsonProperty + public Integer maxLength; + + /** + * The value of this keyword MUST be a non-negative integer. + *
+ * A string instance is valid against this keyword if its length is greater than, or equal to, the value of this keyword. + *
+ * The length of a string instance is defined as the number of its characters as defined by RFC 7159 [RFC7159]. + *
+ * Omitting this keyword has the same behavior as a value of 0. + */ + @Nullable + @JsonProperty + public Integer minLength; + + /** + * The value of this keyword MUST be a string. This string SHOULD be a valid regular expression, according + * to the ECMA 262 regular expression dialect. + *
+ * A string instance is considered valid if the regular expression matches the instance successfully. + * Recall: regular expressions are not implicitly anchored. + */ + @Nullable + @JsonProperty + public String pattern; + + /* + Validation Keywords for Arrays + */ + + /** + * The value of "items" MUST be either a valid JSON Schema or an array of valid JSON Schemas. + *
+ * This keyword determines how child instances validate for arrays, and does not directly validate the immediate instance itself. + *
+ * If "items" is a schema, validation succeeds if all elements in the array successfully validate against that schema. + *
+ * If "items" is an array of schemas, validation succeeds if each element of the instance validates against the schema at the same + * position, if any. + *
+ * Omitting this keyword has the same behavior as an empty schema. + */ + @Nullable + @JsonProperty + public Object items; + + /** + * The value of "additionalItems" MUST be a valid JSON Schema. + *
+ * This keyword determines how child instances validate for arrays, and does not directly validate the immediate instance itself. + *
+ * If "items" is an array of schemas, validation succeeds if every instance element at a position greater than the size of "items" + * validates against "additionalItems". + *
+ * Otherwise, "additionalItems" MUST be ignored, as the "items" schema (possibly the default value of an empty schema) is applied + * to all elements. + *
+ * Omitting this keyword has the same behavior as an empty schema. + */ + @Nullable + public Schema additionalItems; + + /** + * The value of this keyword MUST be a non-negative integer. + *
+ * An array instance is valid against "maxItems" if its size is less than, or equal to, the value of this keyword. + */ + @Nullable + @JsonProperty + public Integer maxItems; + + /** + * The value of this keyword MUST be a non-negative integer. + *
+ * An array instance is valid against "minItems" if its size is greater than, or equal to, the value of this keyword. + *
+ * Omitting this keyword has the same behavior as a value of 0. + */ + @Nullable + @JsonProperty + public Integer minItems; + + /** + * The value of this keyword MUST be a boolean. + *
+ * If this keyword has boolean value false, the instance validates successfully. If it has boolean value true, + * the instance validates successfully if all of its elements are unique. + *
+ * Omitting this keyword has the same behavior as a value of false. + */ + @Nullable + @JsonProperty + public Boolean uniqueItems; + + /** + * The value of this keyword MUST be a valid JSON Schema. + *
+ * An array instance is valid against "contains" if at least one of its elements is valid against the given schema. + */ + @Nullable + @JsonProperty + public Schema contains; + + /* + Validation Keywords for Objects + */ + + /** + * The value of this keyword MUST be a non-negative integer. + *
+ * An object instance is valid against "maxProperties" if its number of properties is less than, or equal to, + * the value of this keyword. + */ + @Nullable + @JsonProperty + public Integer maxProperties; + + /** + * The value of this keyword MUST be a non-negative integer. + *

+ * An object instance is valid against "minProperties" if its number of properties is greater than, or equal to, + * the value of this keyword. + *

+ * Omitting this keyword has the same behavior as a value of 0. + */ + @Nullable + @JsonProperty + public Integer minProperties; + + /** + * The value of this keyword MUST be an array. Elements of this array, if any, MUST be strings, and MUST be unique. + *

+ * An object instance is valid against this keyword if every item in the array is the name of a property in the instance. + *

+ * Omitting this keyword has the same behavior as an empty array. + */ + @Nullable + @JsonProperty + public List required; + + /** + * The value of "properties" MUST be an object. Each value of this object MUST be a valid JSON Schema. + *

+ * This keyword determines how child instances validate for objects, and does not directly validate the immediate + * instance itself. + *

+ * Validation succeeds if, for each name that appears in both the instance and as a name within this keyword's value, + * the child instance for that name successfully validates against the corresponding schema. + *

+ * Omitting this keyword has the same behavior as an empty object. + */ + @Nullable + @JsonProperty + public Map properties; + + /** + * The value of "patternProperties" MUST be an object. Each property name of this object SHOULD be a valid regular + * expression, according to the ECMA 262 regular expression dialect. Each property value of this object MUST be a + * valid JSON Schema. + *

+ * This keyword determines how child instances validate for objects, and does not directly validate the immediate + * instance itself. Validation of the primitive instance type against this keyword always succeeds. + *

+ * Validation succeeds if, for each instance name that matches any regular expressions that appear as a property name + * in this keyword's value, the child instance for that name successfully validates against each schema that corresponds + * to a matching regular expression. + *

+ * Omitting this keyword has the same behavior as an empty object. + */ + @Nullable + @JsonProperty + public Map patternProperties; + + /** + * The value of "additionalProperties" MUST be a valid JSON Schema. + *

+ * This keyword determines how child instances validate for objects, and does not directly validate the immediate + * instance itself. + *

+ * Validation with "additionalProperties" applies only to the child values of instance names that do not match any + * names in "properties", and do not match any regular expression in "patternProperties". + *

+ * For all such properties, validation succeeds if the child instance validates against the "additionalProperties" schema. + *

+ * Omitting this keyword has the same behavior as an empty schema. + */ + @Nullable + @JsonProperty + @JsonDeserialize(using = SchemasAdditionalPropertiesDeserializer.class) + public Object additionalProperties; + + /** + * [[CREF1: This keyword may be split into two, with the variation that uses an array of property names rather than a + * subschema getting a new name. The dual behavior is confusing and relatively difficult to implement. In the previous + * draft, we proposed dropping the keyword altogether, or dropping one of its forms, but we received feedback in support of + * keeping it. See issues #442 and #528 at https://github.com/json-schema-org/json-schema-spec/issues for further discussion. + * Further feedback is encouraged.]] + *

+ * This keyword specifies rules that are evaluated if the instance is an object and contains a certain property. + *

+ * This keyword's value MUST be an object. Each property specifies a dependency. Each dependency value MUST be an array + * or a valid JSON Schema. + *

+ * If the dependency value is a subschema, and the dependency key is a property in the instance, the entire instance must validate + * against the dependency value. + *

+ * If the dependency value is an array, each element in the array, if any, MUST be a string, and MUST be unique. If the dependency + * key is a property in the instance, each of the items in the dependency value must be a property that exists in the instance. + *

+ * Omitting this keyword has the same behavior as an empty object. + */ + @Nullable + @JsonProperty + public Object dependencies; + + /** + * The value of "propertyNames" MUST be a valid JSON Schema. + *

+ * If the instance is an object, this keyword validates if every property name in the instance validates against the provided schema. + * Note the property name that the schema is testing will always be a string. + *

+ * Omitting this keyword has the same behavior as an empty schema. + */ + @Nullable + @JsonProperty + public Schema propertyNames; + + /* + Keywords for Applying Subschemas Conditionally + + These keywords work together to implement conditional application of + a subschema based on the outcome of another subschema. + + These keywords MUST NOT interact with each other across subschema + boundaries. In other words, an "if" in one branch of an "allOf" MUST + NOT have an impact on a "then" or "else" in another branch. + + There is no default behavior for any of these keywords when they are + not present. In particular, they MUST NOT be treated as if present + with an empty schema, and when "if" is not present, both "then" and + "else" MUST be entirely ignored. + */ + + /** + * This keyword's value MUST be a valid JSON Schema. + *

+ * This validation outcome of this keyword's subschema has no direct effect on the overall validation result. + * Rather, it controls which of the "then" or "else" keywords are evaluated. + *

+ * Instances that successfully validate against this keyword's subschema MUST also be valid against the subschema + * value of the "then" keyword, if present. + *

+ * Instances that fail to validate against this keyword's subschema MUST also be valid against the subschema value of + * the "else" keyword, if present. + *

+ * If annotations (Section 3.3) are being collected, they are collected from this keyword's subschema in the usual way, + * including when the keyword is present without either "then" or "else". + */ + @JsonProperty("if") + @Nullable + public Schema ifValue; + + /** + * This keyword's value MUST be a valid JSON Schema. + *

+ * When "if" is present, and the instance successfully validates against its subschema, then valiation succeeds against + * this keyword if the instance also successfully validates against this keyword's subschema. + *

+ * This keyword has no effect when "if" is absent, or when the instance fails to validate against its subschema. + * Implementations MUST NOT evaluate the instance against this keyword, for either validation or annotation collection + * purposes, in such cases. + */ + @JsonProperty("then") + @Nullable + public Schema thenValue; + + /** + * This keyword's value MUST be a valid JSON Schema. + *

+ * When "if" is present, and the instance fails to validate against its subschema, then valiation succeeds against this + * keyword if the instance successfully validates against this keyword's subschema. + *

+ * This keyword has no effect when "if" is absent, or when the instance successfully validates against its subschema. + * Implementations MUST NOT evaluate the instance against this keyword, for either validation or annotation collection + * purposes, in such cases. + */ + @JsonProperty("else") + @Nullable + public Schema elseValue; + + /* + Keywords for Applying Subschemas With Boolean Logic + */ + + /** + * This keyword's value MUST be a non-empty array. Each item of the array MUST be a valid JSON Schema. + *

+ * An instance validates successfully against this keyword if it validates successfully against all schemas defined + * by this keyword's value. + */ + @Nullable + @JsonProperty + public List allOf; + + /** + * This keyword's value MUST be a non-empty array. Each item of the array MUST be a valid JSON Schema. + *

+ * An instance validates successfully against this keyword if it validates successfully against at least one schema + * defined by this keyword's value. + */ + @Nullable + @JsonProperty + public List anyOf; + + /** + * This keyword's value MUST be a non-empty array. Each item of the array MUST be a valid JSON Schema. + *

+ * An instance validates successfully against this keyword if it validates successfully against exactly one schema + * defined by this keyword's value. + */ + @Nullable + @JsonProperty + public List oneOf; + + /** + * This keyword's value MUST be a valid JSON Schema. + *

+ * An instance is valid against this keyword if it fails to validate successfully against the schema defined by this keyword. + */ + @Nullable + @JsonProperty + public Schema not; + + // Fields defined in AsyncAPI below + + /* + The following properties are taken from the JSON Schema definition but their definitions were adjusted to the AsyncAPI Specification. + */ + /** + * See Data Type Formats for further details. + * While relying on JSON Schema's defined formats, the AsyncAPI Specification offers a few additional predefined formats. + */ + @Nullable + @JsonProperty + public Object format; + + /* + In addition to the JSON Schema fields, the following AsyncAPI vocabulary fields MAY be used for further schema documentation: + */ + /** + * Adds support for polymorphism. The discriminator is the schema property name that is used to differentiate between + * other schema that inherit this schema. + *

+ * The property name used MUST be defined at this schema and it MUST be in the required property list. + * When used, the value MUST be the name of this schema or any schema that inherits it. See Composition and Inheritance for more details. + */ + @Nullable + @JsonProperty + public String discriminator; + /** + * Additional external documentation for this schema. + */ + @Nullable + @JsonProperty + public ExternalDocumentation externalDocs; + + /** + * Specifies that a schema is deprecated and SHOULD be transitioned out of usage. Default value is false. + */ + @Nullable + @JsonProperty + public Boolean deprecated; + +} From bbcbf4b664bdb796379d454fb773d6f83296adb4 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Fri, 29 Sep 2023 00:09:55 +0400 Subject: [PATCH 31/54] feat(3.0.0): Schema --- ...hemasAdditionalPropertiesDeserializer.java | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/jackson/schema/SchemasAdditionalPropertiesDeserializer.java diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/schema/SchemasAdditionalPropertiesDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/schema/SchemasAdditionalPropertiesDeserializer.java new file mode 100644 index 00000000..270affd4 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/schema/SchemasAdditionalPropertiesDeserializer.java @@ -0,0 +1,36 @@ +package com.asyncapi.v3.jackson.schema; + +import com.asyncapi.v2.schema.Schema; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; +import com.fasterxml.jackson.databind.JsonNode; + +import java.io.IOException; + +/** + * @author Guillaume LAMIRAND (guillaume.lamirand at graviteesource.com) + * @author GraviteeSource Team + */ +public class SchemasAdditionalPropertiesDeserializer extends JsonDeserializer { + + @Override + public Object deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException { + ObjectCodec objectCodec = p.getCodec(); + JsonNode node = objectCodec.readTree(p); + + return chooseKnownPojo(node, objectCodec); + } + + private Object chooseKnownPojo(JsonNode jsonNode, final ObjectCodec objectCodec) throws IOException { + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + if (jsonNode.isBoolean()) { + return jsonNode.asBoolean(); + } else { + return jsonParser.readValueAs(Schema.class); + } + } + } +} From deddbd78236fb5d1e0e3b5905f677c11044df728 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Fri, 29 Sep 2023 00:10:06 +0400 Subject: [PATCH 32/54] feat(3.0.0): Schema types --- .../main/java/com/asyncapi/v3/schema/Type.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/schema/Type.java diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/schema/Type.java b/asyncapi-core/src/main/java/com/asyncapi/v3/schema/Type.java new file mode 100644 index 00000000..957e6b30 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/schema/Type.java @@ -0,0 +1,16 @@ +package com.asyncapi.v3.schema; + +/** + * @author Pavel Bodiachevskii + */ +public class Type { + + public final static String NULL = "null"; + public final static String BOOLEAN = "boolean"; + public final static String OBJECT = "object"; + public final static String ARRAY = "array"; + public final static String NUMBER = "number"; + public final static String STRING = "string"; + public final static String INTEGER = "integer"; + +} From 16a05c97d7bbdd5235cb1f36d4cf6e03770c63ad Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Fri, 29 Sep 2023 00:10:25 +0400 Subject: [PATCH 33/54] feat(3.0.0): Multi Format Schema --- .../asyncapi/v3/schema/MultiFormatSchema.java | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/schema/MultiFormatSchema.java diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/schema/MultiFormatSchema.java b/asyncapi-core/src/main/java/com/asyncapi/v3/schema/MultiFormatSchema.java new file mode 100644 index 00000000..64192dc5 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/schema/MultiFormatSchema.java @@ -0,0 +1,51 @@ +package com.asyncapi.v3.schema; + +import com.asyncapi.v3.ExtendableObject; +import lombok.*; +import org.jetbrains.annotations.NotNull; + +/** + * The Multi Format Schema Object represents a schema definition. It differs from the Schema Object in that it supports + * multiple schema formats or languages (e.g., JSON Schema, Avro, etc.). + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MultiFormatSchema extends ExtendableObject { + + /** + * Required. + *

+ * A string containing the name of the schema format that is used to define the information. If schemaFormat is missing, + * it MUST default to application/vnd.aai.asyncapi+json;version={{asyncapi}} where {{asyncapi}} matches the AsyncAPI Version String. + * In such a case, this would make the Multi Format Schema Object equivalent to the Schema Object. When using Reference Object + * within the schema, the schemaFormat of the resource being referenced MUST match the schemaFormat of the schema that contains the + * initial reference. + * For example, if you reference Avro schema, then schemaFormat of referencing resource and the resource being reference MUST match. + *

+ * Check out the supported schema formats table for more information. Custom values are allowed but their implementation is OPTIONAL. + * A custom value MUST NOT refer to one of the schema formats listed in the table. + *

+ * When using Reference Objects within the schema, the schemaFormat of the referenced resource MUST match the schemaFormat + * of the schema containing the reference. + */ + @NotNull + private String schemaFormat; + + /** + * Required. + *

+ * Definition of the message payload. + *

+ * It can be of any type but defaults to Schema Object. + *

+ * It MUST match the schema format defined in schemaFormat, including the encoding type. E.g., Avro should be + * inlined as either a YAML or JSON object instead of as a string to be parsed as YAML or JSON. Non-JSON-based + * schemas (e.g., Protobuf or XSD) MUST be inlined as a string. + */ + @NotNull + private Object schema; + +} From 732e555cbfc376d50e70246eee67dd9528647215 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Fri, 29 Sep 2023 00:16:40 +0400 Subject: [PATCH 34/54] feat(3.0.0): CorrelationId --- .../model/channel/message/CorrelationId.java | 39 +++++++++++++++++++ .../channel/message/CorrelationIdTest.kt | 22 +++++++++++ .../message/correlationId - extended.json | 9 +++++ .../correlationId - wrongly extended.json | 10 +++++ .../model/channel/message/correlationId.json | 4 ++ 5 files changed, 84 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/CorrelationId.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/CorrelationIdTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/CorrelationId.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/CorrelationId.java new file mode 100644 index 00000000..09b97a06 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/CorrelationId.java @@ -0,0 +1,39 @@ +package com.asyncapi.v3._0_0.model.channel.message; + +import com.asyncapi.v3.ExtendableObject; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * An object that specifies an identifier at design time that can used for message tracing and correlation. + *
+ * For specifying and computing the location of a Correlation ID, a runtime expression is used. + * + * @version 3.0.0 + * @see CorrelationId + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class CorrelationId extends ExtendableObject { + + /** + * An optional description of the identifier. CommonMark syntax can be used for rich text representation. + */ + @Nullable + private String description; + + /** + * REQUIRED. + *

+ * A runtime expression that specifies the location of the correlation ID. + */ + @NotNull + @Builder.Default + private String location = ""; + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/CorrelationIdTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/CorrelationIdTest.kt new file mode 100644 index 00000000..c4903647 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/CorrelationIdTest.kt @@ -0,0 +1,22 @@ +package com.asyncapi.v3._0_0.model.channel.message + +import com.asyncapi.v3.SerDeTest + +class CorrelationIdTest: SerDeTest() { + + override fun objectClass() = CorrelationId::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/message/correlationId.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/message/correlationId - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/message/correlationId - wrongly extended.json" + + override fun build(): CorrelationId { + return CorrelationId.builder() + .description("Default Correlation ID") + .location("\$message.header#/correlationId") + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId - extended.json new file mode 100644 index 00000000..47474f2f --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId - extended.json @@ -0,0 +1,9 @@ +{ + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId - wrongly extended.json new file mode 100644 index 00000000..199ca7a9 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "description": "Default Correlation ID", + "location": "$message.header#/correlationId", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId.json new file mode 100644 index 00000000..2e50f550 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/correlationId.json @@ -0,0 +1,4 @@ +{ + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" +} \ No newline at end of file From 1fcb1c58260a82efec89b1e6677b5d0c3d21e9b2 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Fri, 29 Sep 2023 00:32:21 +0400 Subject: [PATCH 35/54] feat(3.0.0): MessageExample --- .../model/channel/message/MessageExample.java | 43 +++++++++++++++++++ .../channel/message/MessageExampleTest.kt | 34 +++++++++++++++ .../message/messageExample - extended.json | 21 +++++++++ .../messageExample - wrongly extended.json | 22 ++++++++++ .../model/channel/message/messageExample.json | 16 +++++++ 5 files changed, 136 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/MessageExample.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageExampleTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/MessageExample.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/MessageExample.java new file mode 100644 index 00000000..dd31f990 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/MessageExample.java @@ -0,0 +1,43 @@ +package com.asyncapi.v3._0_0.model.channel.message; + +import com.asyncapi.v3.ExtendableObject; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.Map; + +/** + * Message Example Object represents an example of a {@link Message} Object and MUST contain either headers and/or payload fields. + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MessageExample extends ExtendableObject { + + /** + * The value of this field MUST validate against the {@link Message#getHeaders()} headers field. + */ + @Nullable + public Map headers; + + /** + * The value of this field MUST validate against the Message {@link Message#getPayload()} field. + */ + @Nullable + public Map payload; + + /** + * A machine-friendly name. + */ + @Nullable + private String name; + + /** + * A short summary of what the example is about. + */ + @Nullable + private String summary; + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageExampleTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageExampleTest.kt new file mode 100644 index 00000000..3537b2c7 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageExampleTest.kt @@ -0,0 +1,34 @@ +package com.asyncapi.v3._0_0.model.channel.message + +import com.asyncapi.v3.SerDeTest + +class MessageExampleTest: SerDeTest() { + + override fun objectClass() = MessageExample::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/message/messageExample.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/message/messageExample - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/message/messageExample - wrongly extended.json" + + override fun build(): MessageExample { + return MessageExample.builder() + .name("SimpleSignup") + .summary("A simple UserSignup example message") + .headers(mapOf( + Pair("correlationId", "my-correlation-id"), + Pair("applicationInstanceId", "myInstanceId") + )) + .payload(mapOf( + Pair("user", mapOf( + Pair("someUserKey", "someUserValue") + )), + Pair("signup", mapOf( + Pair("someSignupKey", "someSignupValue") + )) + )) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample - extended.json new file mode 100644 index 00000000..4eb8dfc9 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample - extended.json @@ -0,0 +1,21 @@ +{ + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample - wrongly extended.json new file mode 100644 index 00000000..876390ff --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample - wrongly extended.json @@ -0,0 +1,22 @@ +{ + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample.json new file mode 100644 index 00000000..cec8a4ae --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageExample.json @@ -0,0 +1,16 @@ +{ + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } +} From 6a2f987859893090ba576e93b7e2bbbd98f9af63 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Fri, 29 Sep 2023 02:43:56 +0400 Subject: [PATCH 36/54] feat(3.0.0): MessageBinding --- .../v3/binding/message/MessageBinding.java | 13 +++ .../message/amqp/AMQPMessageBinding.java | 52 +++++++++ .../message/amqp1/AMQP1MessageBinding.java | 21 ++++ .../anypointmq/AnypointMQMessageBinding.java | 45 ++++++++ .../GooglePubSubMessageBinding.java | 62 +++++++++++ .../GooglePubSubMessageSchemaDefinition.java | 49 +++++++++ ...oglePubSubMessageSchemaDefinitionType.java | 23 ++++ .../message/http/HTTPMessageBinding.java | 44 ++++++++ .../message/ibmmq/IBMMQMessageBinding.java | 89 +++++++++++++++ .../message/ibmmq/IBMMQMessageType.java | 25 +++++ .../message/jms/JMSMessageBinding.java | 21 ++++ .../message/kafka/KafkaMessageBinding.java | 67 ++++++++++++ .../kafka/KafkaMessageSchemaIdLocation.java | 20 ++++ .../mercure/MercureMessageBinding.java | 21 ++++ .../message/mqtt/MQTTMessageBinding.java | 34 ++++++ .../message/mqtt5/MQTT5MessageBinding.java | 21 ++++ .../message/nats/NATSMessageBinding.java | 21 ++++ .../message/pulsar/PulsarMessageBinding.java | 23 ++++ .../message/redis/RedisMessageBinding.java | 21 ++++ .../message/sns/SNSMessageBinding.java | 21 ++++ .../message/solace/SolaceMessageBinding.java | 23 ++++ .../message/sqs/SQSMessageBinding.java | 21 ++++ .../message/stomp/STOMPMessageBinding.java | 21 ++++ .../message/ws/WebSocketsMessageBinding.java | 21 ++++ .../message/amqp/AMQPMessageBindingTest.kt | 22 ++++ .../AnypointMQMessageBindingTest.kt | 34 ++++++ .../GooglePubSubMessageBindingTest.kt | 24 ++++ .../message/http/HTTPMessageBindingTest.kt | 34 ++++++ .../message/ibmmq/IBMMQMessageBindingTest.kt | 24 ++++ .../message/kafka/KafkaMessageBindingTest.kt | 29 +++++ .../message/mqtt/MQTTMessageBindingTest.kt | 20 ++++ .../amqp/amqpMessageBinding - extended.json | 10 ++ ...amqpMessageBinding - wrongly extended.json | 11 ++ .../message/amqp/amqpMessageBinding.json | 5 + .../anypointMQMessageBinding - extended.json | 103 ++++++++++++++++++ ...ntMQMessageBinding - wrongly extended.json | 18 +++ .../anypointmq/anypointMQMessageBinding.json | 12 ++ ...googlePubSubMessageBinding - extended.json | 14 +++ ...bSubMessageBinding - wrongly extended.json | 13 +++ .../googlePubSubMessageBinding.json | 7 ++ .../http/httpMessageBinding - extended.json | 103 ++++++++++++++++++ ...httpMessageBinding - wrongly extended.json | 20 ++++ .../message/http/httpMessageBinding.json | 14 +++ .../ibmmq/ibmMQMessageBinding - extended.json | 12 ++ ...bmMQMessageBinding - wrongly extended.json | 13 +++ .../message/ibmmq/ibmMQMessageBinding.json | 7 ++ .../kafka/kafkaMessageBinding - extended.json | 58 ++++++++++ ...afkaMessageBinding - wrongly extended.json | 18 +++ .../message/kafka/kafkaMessageBinding.json | 12 ++ .../mqtt/mqttMessageBinding - extended.json | 8 ++ ...mqttMessageBinding - wrongly extended.json | 9 ++ .../message/mqtt/mqttMessageBinding.json | 3 + 52 files changed, 1436 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/MessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/amqp/AMQPMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/amqp1/AMQP1MessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/anypointmq/AnypointMQMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageSchemaDefinition.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageSchemaDefinitionType.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/http/HTTPMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageType.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/jms/JMSMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/kafka/KafkaMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/kafka/KafkaMessageSchemaIdLocation.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mercure/MercureMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mqtt/MQTTMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mqtt5/MQTT5MessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/nats/NATSMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/pulsar/PulsarMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/redis/RedisMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/sns/SNSMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/solace/SolaceMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/sqs/SQSMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/stomp/STOMPMessageBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ws/WebSocketsMessageBinding.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/amqp/AMQPMessageBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/anypointmq/AnypointMQMessageBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/http/HTTPMessageBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/kafka/KafkaMessageBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/mqtt/MQTTMessageBindingTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/MessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/MessageBinding.java new file mode 100644 index 00000000..2f75d7d8 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/MessageBinding.java @@ -0,0 +1,13 @@ +package com.asyncapi.v3.binding.message; + +import com.asyncapi.v3.ExtendableObject; +import lombok.EqualsAndHashCode; + +/** + * Describes AsyncAPI message binding. + * + * @author Pavel Bodiachevskii + */ +@EqualsAndHashCode(callSuper = true) +public class MessageBinding extends ExtendableObject { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/amqp/AMQPMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/amqp/AMQPMessageBinding.java new file mode 100644 index 00000000..820202c6 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/amqp/AMQPMessageBinding.java @@ -0,0 +1,52 @@ +package com.asyncapi.v3.binding.message.amqp; + +import com.asyncapi.v3.binding.message.MessageBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes AMQP 0-9-1 message binding. + *

+ * Contains information about the message representation in AMQP. + * + * @version 0.2.0 + * @see AMQP message binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes AMQP 0-9-1 message binding.") +public class AMQPMessageBinding extends MessageBinding { + + /** + * A MIME encoding for the message content. + */ + @Nullable + @JsonProperty("contentEncoding") + @JsonPropertyDescription("A MIME encoding for the message content.") + private String contentEncoding; + + /** + * Application-specific message type. + */ + @Nullable + @JsonProperty("messageType") + @JsonPropertyDescription("Application-specific message type.") + private String messageType; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.2.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/amqp1/AMQP1MessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/amqp1/AMQP1MessageBinding.java new file mode 100644 index 00000000..73617ca1 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/amqp1/AMQP1MessageBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.message.amqp1; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes AMQP 1.0 message binding. + * + * @version 0.1.0 + * @see AMQP message binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AMQP1MessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/anypointmq/AnypointMQMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/anypointmq/AnypointMQMessageBinding.java new file mode 100644 index 00000000..07f8b497 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/anypointmq/AnypointMQMessageBinding.java @@ -0,0 +1,45 @@ +package com.asyncapi.v3.binding.message.anypointmq; + +import com.asyncapi.v3.schema.Schema; +import com.asyncapi.v3.binding.message.MessageBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Anypoint MQ message binding. + * + * @version 0.0.1 + * @see Anypoint MQ message binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes Anypoint MQ message binding.") +public class AnypointMQMessageBinding extends MessageBinding { + + /** + * A Schema object containing the definitions for Anypoint MQ-specific headers (so-called protocol headers). + * This schema MUST be of type object and have a properties key. Examples of Anypoint MQ protocol headers are + * messageId and messageGroupId. + */ + @Nullable + @JsonProperty("headers") + @JsonPropertyDescription("A Schema object containing the definitions for Anypoint MQ-specific headers (so-called protocol headers). This schema MUST be of type object and have a properties key. Examples of Anypoint MQ protocol headers are messageId and messageGroupId.") + private Schema headers; + + /** + * The version of this binding. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.0.1"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageBinding.java new file mode 100644 index 00000000..5f6373de --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageBinding.java @@ -0,0 +1,62 @@ +package com.asyncapi.v3.binding.message.googlepubsub; + +import com.asyncapi.v3.binding.message.MessageBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Google Cloud Pub/Sub message binding. + *

+ * The Message Binding Object is used to describe the Google Cloud Pub/Sub specific PubsubMessage details, alongside with + * pertintent parts of the Google Cloud Pub/Sub Schema Object, with AsyncAPI. + * + * @version 0.1.0 + * @see Google Cloud Pub/Sub message binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes Google Cloud Pub/Sub message binding.") +public class GooglePubSubMessageBinding extends MessageBinding { + + /** + * If non-empty, identifies related messages for which publish order should be respected (For more information, see ordering messages.) + */ + @Nullable + @JsonProperty("orderingKey") + @JsonPropertyDescription("If non-empty, identifies related messages for which publish order should be respected (For more information, see https://cloud.google.com/pubsub/docs/ordering messages") + private String orderingKey; + + /** + * Attributes for this message (If this field is empty, the message must contain non-empty data. This can be used to + * filter messages on the subscription.) + */ + @Nullable + @JsonProperty("attributes") + @JsonPropertyDescription("Attributes for this message (If this field is empty, the message must contain non-empty data. This can be used to filter messages on the subscription.)") + private Object attributes; + + /** + * Describes the schema used to validate the payload of this message + */ + @Nullable + @JsonProperty("schema") + @JsonPropertyDescription("Describes the schema used to validate the payload of this message") + private GooglePubSubMessageSchemaDefinition schema; + + /** + * The version of this binding. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageSchemaDefinition.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageSchemaDefinition.java new file mode 100644 index 00000000..277061b3 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageSchemaDefinition.java @@ -0,0 +1,49 @@ +package com.asyncapi.v3.binding.message.googlepubsub; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.NotNull; + +/** + * Describes Google Cloud Pub/Sub message schema definition. + *

+ * The Schema Definition Object is used to describe the Google Cloud Pub/Sub Schema Object with AsyncAPI. + * While some of this information could be, or is, described using native AsyncAPI, for consistency it makes sense to + * provide this information here at all times, especially for cases where AsyncAPI does not natively support describing + * payloads using a supported Google Cloud Pub/Sub schema format like Protobuf. + * + * @version 0.1.0 + * @see Google Cloud Pub/Sub message binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode +@JsonClassDescription("Describes Google Cloud Pub/Sub message schema definition.") +public class GooglePubSubMessageSchemaDefinition { + + /** + * The name of the schema + */ + @NotNull + @Builder.Default + @javax.validation.constraints.NotNull + @JsonProperty(value = "name", required = true) + @JsonPropertyDescription("The name of the schema") + private String name = ""; + + /** + * The type of the schema + */ + @NotNull + @Builder.Default + @javax.validation.constraints.NotNull + @JsonProperty(value = "type", required = true) + @JsonPropertyDescription("The type of the schema") + private GooglePubSubMessageSchemaDefinitionType type = GooglePubSubMessageSchemaDefinitionType.PROTOBUF; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageSchemaDefinitionType.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageSchemaDefinitionType.java new file mode 100644 index 00000000..f7dd4bc3 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageSchemaDefinitionType.java @@ -0,0 +1,23 @@ +package com.asyncapi.v3.binding.message.googlepubsub; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * Describes Google Cloud Pub/Sub message schema definition type. + * + * @version 0.1.0 + * @see Google Cloud Pub/Sub message binding + * @see Types of schemas + * @author Pavel Bodiachevskii + */ +@JsonClassDescription("Describes Google Cloud Pub/Sub message schema definition type.") +public enum GooglePubSubMessageSchemaDefinitionType { + + @JsonProperty("avro") + AVRO, + + @JsonProperty("protobuf") + PROTOBUF + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/http/HTTPMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/http/HTTPMessageBinding.java new file mode 100644 index 00000000..664f1e40 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/http/HTTPMessageBinding.java @@ -0,0 +1,44 @@ +package com.asyncapi.v3.binding.message.http; + +import com.asyncapi.v3.schema.Schema; +import com.asyncapi.v3.binding.message.MessageBinding; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes HTTP message binding. + *

+ * Contains information about the message representation in HTTP. + * + * @version 0.1.0 + * @see HTTP message binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class HTTPMessageBinding extends MessageBinding { + + /** + * A Schema object containing the definitions for each query parameter. This schema MUST be of type object + * and have a properties key.* + */ + @Nullable + @JsonProperty("headers") + @JsonPropertyDescription("A Schema object containing the definitions for each query parameter. This schema MUST be of type object and have a properties key.") + private Schema headers; + + /** + * The version of this binding. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageBinding.java new file mode 100644 index 00000000..72efcf1a --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageBinding.java @@ -0,0 +1,89 @@ +package com.asyncapi.v3.binding.message.ibmmq; + +import com.asyncapi.v3.binding.message.MessageBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes IBM MQ message binding. + *

+ * This object contains information about the message representation in IBM MQ. + * + * @version 0.1.0 + * @see IBM MQ message binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes IBM MQ message binding.") +public class IBMMQMessageBinding extends MessageBinding { + + /** + * The type of the message. + *

+ * MUST be either string, jms or binary + */ + @Nullable + @Builder.Default + @JsonProperty(value = "type", defaultValue = "string") + @JsonPropertyDescription("The type of the message.") + private IBMMQMessageType type = IBMMQMessageType.STRING; + + /** + * Defines the IBM MQ message headers to include with this message. More than one header can be specified as a comma + * separated list. Supporting information on IBM MQ message formats can be found on this page in the IBM MQ Knowledge Center. + *

+ * OPTIONAL if type = binary + *

+ * headers MUST NOT be specified if type = string or jms + */ + @Nullable + @JsonProperty("headers") + @JsonPropertyDescription("Defines the IBM MQ message headers to include with this message. More than one header can be specified as a comma separated list.") + private String headers; + + /** + * Provides additional information for application developers: describes the message type or format. + *

+ * The description field of the IBM MQ message binding object MAY include CommonMark markdown formatting. + * A minimum markdown syntax as described by CommonMark 0.27 is assumed. + */ + @Nullable + @JsonProperty("description") + @JsonPropertyDescription("Provides additional information for application developers: describes the message type or format.") + private String description; + + /** + * The recommended setting the client should use for the TTL (Time-To-Live) of the message. + * This is a period of time expressed in milliseconds and set by the application that puts the message. + * expiry values are API dependant e.g., MQI and JMS use different units of time and default values for unlimited. + * General information on IBM MQ message expiry can be found on this page in the IBM MQ Knowledge Center. + *

+ * expiry value MUST be either zero (unlimited) or greater than zero. + */ + @Nullable + @Builder.Default + @javax.validation.constraints.Min( + value = 0, + message = "Expiry must be greater or equals to 0" + ) + @JsonProperty(value = "expiry", defaultValue = "0") + @JsonPropertyDescription("The recommended setting the client should use for the TTL (Time-To-Live) of the message. This is a period of time expressed in milliseconds and set by the application that puts the message. 'expiry' values are API dependant e.g., MQI and JMS use different units of time and default values for 'unlimited'. General information on IBM MQ message expiry can be found on this [page](https://www.ibm.com/docs/en/ibm-mq/9.2?topic=mqmd-expiry-mqlong) in the IBM MQ Knowledge Center.") + private Integer expiry = 0; + + /** + * The version of this binding. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageType.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageType.java new file mode 100644 index 00000000..171f8a2f --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageType.java @@ -0,0 +1,25 @@ +package com.asyncapi.v3.binding.message.ibmmq; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * Describes IBM MQ message type. + *

+ * This object contains information about the message type in IBM MQ. + * + * @version 0.1.0 + * @see IBM MQ message binding + * @author Pavel Bodiachevskii + */ +public enum IBMMQMessageType { + + @JsonProperty("string") + STRING, + + @JsonProperty("jms") + JMS, + + @JsonProperty("binary") + BINARY + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/jms/JMSMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/jms/JMSMessageBinding.java new file mode 100644 index 00000000..f44eec50 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/jms/JMSMessageBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.message.jms; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes JMS message binding. + * + * @version 0.1.0 + * @see JMS message binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class JMSMessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/kafka/KafkaMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/kafka/KafkaMessageBinding.java new file mode 100644 index 00000000..52070204 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/kafka/KafkaMessageBinding.java @@ -0,0 +1,67 @@ +package com.asyncapi.v3.binding.message.kafka; + +import com.asyncapi.v3.schema.Schema; +import com.asyncapi.v3.binding.message.MessageBinding; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Kafka message binding. + *

+ * Contains information about the message representation in Kafka. + * + * @version 0.1.0 + * @see Kafka message binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class KafkaMessageBinding extends MessageBinding { + + /** + * The message key. + */ + @Nullable + @JsonProperty("key") + @JsonPropertyDescription("The message key.") + private Schema key; + + /** + * If a Schema Registry is used when performing this operation, tells where the id of schema is stored (e.g. header or payload). + */ + @Nullable + @JsonProperty("schemaIdLocation") + @JsonPropertyDescription("If a Schema Registry is used when performing this operation, tells where the id of schema is stored (e.g. header or payload).") + private KafkaMessageSchemaIdLocation schemaIdLocation; + + /** + * Number of bytes or vendor specific values when schema id is encoded in payload (e.g confluent/ apicurio-legacy / apicurio-new). + */ + @Nullable + @JsonProperty("schemaIdPayloadEncoding") + @JsonPropertyDescription("Number of bytes or vendor specific values when schema id is encoded in payload (e.g confluent/ apicurio-legacy / apicurio-new).") + private String schemaIdPayloadEncoding; + + /** + * Freeform string for any naming strategy class to use. Clients should default to the vendor default if not supplied. + */ + @Nullable + @JsonProperty("schemaLookupStrategy") + @JsonPropertyDescription("Freeform string for any naming strategy class to use. Clients should default to the vendor default if not supplied.") + private String schemaLookupStrategy; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.4.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/kafka/KafkaMessageSchemaIdLocation.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/kafka/KafkaMessageSchemaIdLocation.java new file mode 100644 index 00000000..e0a16f88 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/kafka/KafkaMessageSchemaIdLocation.java @@ -0,0 +1,20 @@ +package com.asyncapi.v3.binding.message.kafka; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * Describes Kafka message schema id location. + * + * @version 0.1.0 + * @see Kafka message binding + * @author Pavel Bodiachevskii + */ +public enum KafkaMessageSchemaIdLocation { + + @JsonProperty("header") + HEADER, + + @JsonProperty("payload") + PAYLOAD + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mercure/MercureMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mercure/MercureMessageBinding.java new file mode 100644 index 00000000..aa3ead1c --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mercure/MercureMessageBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.message.mercure; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Mercure message binding. + * + * @version 0.1.0 + * @see Mercure message binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MercureMessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mqtt/MQTTMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mqtt/MQTTMessageBinding.java new file mode 100644 index 00000000..cbaa824d --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mqtt/MQTTMessageBinding.java @@ -0,0 +1,34 @@ +package com.asyncapi.v3.binding.message.mqtt; + +import com.asyncapi.v3.binding.message.MessageBinding; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes MQTT message binding. + *

+ * Contains information about the message representation in MQTT. + * + * @version 0.1.0 + * @see MQTT message binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MQTTMessageBinding extends MessageBinding { + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mqtt5/MQTT5MessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mqtt5/MQTT5MessageBinding.java new file mode 100644 index 00000000..e344426e --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/mqtt5/MQTT5MessageBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.message.mqtt5; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes MQTT 5 message binding. + * + * @version 0.2.0 + * @see MQTT 5 message binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MQTT5MessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/nats/NATSMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/nats/NATSMessageBinding.java new file mode 100644 index 00000000..8557fc15 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/nats/NATSMessageBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.message.nats; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes NATS message binding. + * + * @version 0.1.0 + * @see NATS message binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class NATSMessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/pulsar/PulsarMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/pulsar/PulsarMessageBinding.java new file mode 100644 index 00000000..257d9948 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/pulsar/PulsarMessageBinding.java @@ -0,0 +1,23 @@ +package com.asyncapi.v3.binding.message.pulsar; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * Describes Pulsar message binding. + *

+ * This object MUST NOT contain any properties. Its name is reserved for future use. + * + * @version 0.1.0 + * @see Pulsar message binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class PulsarMessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/redis/RedisMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/redis/RedisMessageBinding.java new file mode 100644 index 00000000..37b5980a --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/redis/RedisMessageBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.message.redis; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Redis message binding. + * + * @version 0.1.0 + * @see Redis message binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class RedisMessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/sns/SNSMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/sns/SNSMessageBinding.java new file mode 100644 index 00000000..17a72455 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/sns/SNSMessageBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.message.sns; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes SNS message binding. + * + * @version 0.1.0 + * @see SNS message binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class SNSMessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/solace/SolaceMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/solace/SolaceMessageBinding.java new file mode 100644 index 00000000..29b24c2b --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/solace/SolaceMessageBinding.java @@ -0,0 +1,23 @@ +package com.asyncapi.v3.binding.message.solace; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Solace message binding. + * + * @version 0.3.0 + * @see Solace message binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class SolaceMessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/sqs/SQSMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/sqs/SQSMessageBinding.java new file mode 100644 index 00000000..9defa798 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/sqs/SQSMessageBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.message.sqs; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes SQS message binding. + * + * @version 0.1.0 + * @see SQS message binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class SQSMessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/stomp/STOMPMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/stomp/STOMPMessageBinding.java new file mode 100644 index 00000000..3e786247 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/stomp/STOMPMessageBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.message.stomp; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes STOMP message binding. + * + * @version 0.1.0 + * @see STOMP message binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class STOMPMessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ws/WebSocketsMessageBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ws/WebSocketsMessageBinding.java new file mode 100644 index 00000000..24dd7274 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/message/ws/WebSocketsMessageBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.message.ws; + +import com.asyncapi.v3.binding.message.MessageBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes WebSockets message binding. + * + * @version 0.1.0 + * @see WebSockets message binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class WebSocketsMessageBinding extends MessageBinding { +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/amqp/AMQPMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/amqp/AMQPMessageBindingTest.kt new file mode 100644 index 00000000..46ce1df5 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/amqp/AMQPMessageBindingTest.kt @@ -0,0 +1,22 @@ +package com.asyncapi.v3.binding.message.amqp + +import com.asyncapi.v3.SerDeTest + +class AMQPMessageBindingTest: SerDeTest() { + + override fun objectClass() = AMQPMessageBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/message/amqp/amqpMessageBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/message/amqp/amqpMessageBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/message/amqp/amqpMessageBinding - wrongly extended.json" + + override fun build(): AMQPMessageBinding { + return AMQPMessageBinding.builder() + .contentEncoding("gzip") + .messageType("user.signup") + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/anypointmq/AnypointMQMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/anypointmq/AnypointMQMessageBindingTest.kt new file mode 100644 index 00000000..610b2f74 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/anypointmq/AnypointMQMessageBindingTest.kt @@ -0,0 +1,34 @@ +package com.asyncapi.v3.binding.message.anypointmq + +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3.schema.Schema +import com.asyncapi.v3.schema.Type + +class AnypointMQMessageBindingTest: SerDeTest() { + + override fun objectClass() = AnypointMQMessageBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/message/anypointmq/anypointMQMessageBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/message/anypointmq/anypointMQMessageBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json" + + override fun build(): AnypointMQMessageBinding { + return AnypointMQMessageBinding.builder() + .headers(Schema.builder() + .type(Type.OBJECT) + .properties(mapOf( + Pair( + "correlationId", + Schema.builder() + .type(Type.STRING) + .description("Correlation ID set by application") + .build() + ) + )) + .build()) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageBindingTest.kt new file mode 100644 index 00000000..201aa44e --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/googlepubsub/GooglePubSubMessageBindingTest.kt @@ -0,0 +1,24 @@ +package com.asyncapi.v3.binding.message.googlepubsub + +import com.asyncapi.v3.SerDeTest + +class GooglePubSubMessageBindingTest: SerDeTest() { + + override fun objectClass() = GooglePubSubMessageBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json" + + override fun build(): GooglePubSubMessageBinding { + return GooglePubSubMessageBinding.builder() + .schema(GooglePubSubMessageSchemaDefinition( + "projects/your-project/schemas/message-avro", + GooglePubSubMessageSchemaDefinitionType.AVRO + )) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/http/HTTPMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/http/HTTPMessageBindingTest.kt new file mode 100644 index 00000000..2b52abc2 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/http/HTTPMessageBindingTest.kt @@ -0,0 +1,34 @@ +package com.asyncapi.v3.binding.message.http + +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3.schema.Schema +import com.asyncapi.v3.schema.Type + +class HTTPMessageBindingTest: SerDeTest() { + + override fun objectClass() = HTTPMessageBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/message/http/httpMessageBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/message/http/httpMessageBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/message/http/httpMessageBinding - wrongly extended.json" + + override fun build(): HTTPMessageBinding { + return HTTPMessageBinding.builder() + .headers(Schema.builder() + .type(Type.OBJECT) + .properties(mapOf( + Pair( + "Content-Type", + Schema.builder() + .type(Type.STRING) + .enumValue(listOf("application/json")) + .build() + ) + )) + .build()) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageBindingTest.kt new file mode 100644 index 00000000..4924a3e5 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/ibmmq/IBMMQMessageBindingTest.kt @@ -0,0 +1,24 @@ +package com.asyncapi.v3.binding.message.ibmmq + +import com.asyncapi.v3.SerDeTest + +class IBMMQMessageBindingTest: SerDeTest() { + + override fun objectClass() = IBMMQMessageBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/message/ibmmq/ibmMQMessageBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/message/ibmmq/ibmMQMessageBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json" + + override fun build(): IBMMQMessageBinding { + return IBMMQMessageBinding.builder() + .type(IBMMQMessageType.JMS) + .description("JMS stream message") + .headers("Content-Type: application/json") + .expiry(0) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/kafka/KafkaMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/kafka/KafkaMessageBindingTest.kt new file mode 100644 index 00000000..4331ecde --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/kafka/KafkaMessageBindingTest.kt @@ -0,0 +1,29 @@ +package com.asyncapi.v3.binding.message.kafka + +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3.schema.Schema +import com.asyncapi.v3.schema.Type + +class KafkaMessageBindingTest: SerDeTest() { + + override fun objectClass() = KafkaMessageBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/message/kafka/kafkaMessageBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/message/kafka/kafkaMessageBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/message/kafka/kafkaMessageBinding - wrongly extended.json" + + override fun build(): KafkaMessageBinding { + return KafkaMessageBinding.builder() + .key(Schema.builder() + .type(Type.STRING) + .enumValue(listOf("myKey")) + .build()) + .schemaIdLocation(KafkaMessageSchemaIdLocation.PAYLOAD) + .schemaIdPayloadEncoding("apicurio-new") + .schemaLookupStrategy("TopicIdStrategy") + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/mqtt/MQTTMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/mqtt/MQTTMessageBindingTest.kt new file mode 100644 index 00000000..d327ec4e --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/message/mqtt/MQTTMessageBindingTest.kt @@ -0,0 +1,20 @@ +package com.asyncapi.v3.binding.message.mqtt + +import com.asyncapi.v3.SerDeTest + +class MQTTMessageBindingTest: SerDeTest() { + + override fun objectClass() = MQTTMessageBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/message/mqtt/mqttMessageBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/message/mqtt/mqttMessageBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/message/mqtt/mqttMessageBinding - wrongly extended.json" + + override fun build(): MQTTMessageBinding { + return MQTTMessageBinding.builder() + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding - extended.json new file mode 100644 index 00000000..98d5ef64 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding - extended.json @@ -0,0 +1,10 @@ +{ + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding - wrongly extended.json new file mode 100644 index 00000000..b3d1d1f1 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding - wrongly extended.json @@ -0,0 +1,11 @@ +{ + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding.json new file mode 100644 index 00000000..3a56f03e --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/amqp/amqpMessageBinding.json @@ -0,0 +1,5 @@ +{ + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - extended.json new file mode 100644 index 00000000..32f0633d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - extended.json @@ -0,0 +1,103 @@ +{ + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json new file mode 100644 index 00000000..bbc0329e --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json @@ -0,0 +1,18 @@ +{ + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding.json new file mode 100644 index 00000000..04509bbf --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding.json @@ -0,0 +1,12 @@ +{ + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json new file mode 100644 index 00000000..ba8ea89d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json @@ -0,0 +1,14 @@ +{ + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json new file mode 100644 index 00000000..2219970c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json @@ -0,0 +1,13 @@ +{ + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding.json new file mode 100644 index 00000000..511854ad --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding.json @@ -0,0 +1,7 @@ +{ + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - extended.json new file mode 100644 index 00000000..506a4b29 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - extended.json @@ -0,0 +1,103 @@ +{ + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - wrongly extended.json new file mode 100644 index 00000000..b4b71d4e --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - wrongly extended.json @@ -0,0 +1,20 @@ +{ + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding.json new file mode 100644 index 00000000..5f7f5672 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding.json @@ -0,0 +1,14 @@ +{ + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding - extended.json new file mode 100644 index 00000000..bf14dfb0 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding - extended.json @@ -0,0 +1,12 @@ +{ + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json new file mode 100644 index 00000000..175d30fb --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json @@ -0,0 +1,13 @@ +{ + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding.json new file mode 100644 index 00000000..49697805 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/ibmmq/ibmMQMessageBinding.json @@ -0,0 +1,7 @@ +{ + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - extended.json new file mode 100644 index 00000000..8a8f68ce --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - extended.json @@ -0,0 +1,58 @@ +{ + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - wrongly extended.json new file mode 100644 index 00000000..37105e30 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - wrongly extended.json @@ -0,0 +1,18 @@ +{ + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding.json new file mode 100644 index 00000000..42340266 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding.json @@ -0,0 +1,12 @@ +{ + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding - extended.json new file mode 100644 index 00000000..32459b79 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding - extended.json @@ -0,0 +1,8 @@ +{ + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding - wrongly extended.json new file mode 100644 index 00000000..a1ecfd51 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding - wrongly extended.json @@ -0,0 +1,9 @@ +{ + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding.json new file mode 100644 index 00000000..04dbf945 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/mqtt/mqttMessageBinding.json @@ -0,0 +1,3 @@ +{ + "bindingVersion": "0.1.0" +} \ No newline at end of file From 67ef603f86a1bef41a0b055b0583bcf74c1ca573 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Sun, 1 Oct 2023 19:58:07 +0400 Subject: [PATCH 37/54] feat(3.0.0): MessageTrait --- .../MessageCorrelationIdDeserializer.java | 23 + .../message/MessageHeadersDeserializer.java | 77 +++ .../model/channel/message/MessageTrait.java | 156 ++++++ .../message/MessageBindingsDeserializer.java | 68 +++ .../model/channel/message/MessageTraitTest.kt | 216 ++++++++ .../message/messageTrait - extended.json | 503 ++++++++++++++++++ .../messageTrait - wrongly extended.json | 156 ++++++ .../message/messageTrait 2 - extended.json | 377 +++++++++++++ .../messageTrait 2 - wrongly extended.json | 378 +++++++++++++ .../model/channel/message/messageTrait 2.json | 152 ++++++ ...essageTrait with reference - extended.json | 364 +++++++++++++ ...ait with reference - wrongly extended.json | 145 +++++ .../message/messageTrait with reference.json | 139 +++++ .../model/channel/message/messageTrait.json | 150 ++++++ 14 files changed, 2904 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageCorrelationIdDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageHeadersDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/MessageTrait.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/message/MessageBindingsDeserializer.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTraitTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageCorrelationIdDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageCorrelationIdDeserializer.java new file mode 100644 index 00000000..7c0988c2 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageCorrelationIdDeserializer.java @@ -0,0 +1,23 @@ +package com.asyncapi.v3._0_0.jackson.model.channel.message; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.channel.message.CorrelationId; +import com.asyncapi.v3.jackson.ReferenceOrObjectDeserializer; + +/** + * Serializes message correlation id. + * + * @author Pavel Bodiachevskii + */ +public class MessageCorrelationIdDeserializer extends ReferenceOrObjectDeserializer { + + @Override + public Class objectTypeClass() { + return CorrelationId.class; + } + + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageHeadersDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageHeadersDeserializer.java new file mode 100644 index 00000000..6bcb98c0 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageHeadersDeserializer.java @@ -0,0 +1,77 @@ +package com.asyncapi.v3._0_0.jackson.model.channel.message; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3.schema.Schema; +import com.asyncapi.v3.schema.MultiFormatSchema; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException; +import org.jetbrains.annotations.NotNull; + +import java.io.IOException; + +/** + * Serializes message traits list. + * + * @author Pavel Bodiachevskii + */ +public class MessageHeadersDeserializer extends JsonDeserializer { + + @Override + public Object deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException { + ObjectCodec objectCodec = p.getCodec(); + JsonNode node = objectCodec.readTree(p); + + /* + Problem: + Both, Reference class and Schema class have $ref field. + So, this is only reason why I receive next exception: + "com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: + Unrecognized field "title" (class com.asyncapi.v2._6_0.model.Reference), + not marked as ignorable (one known property: "$ref"])" + in case when Schema contains $ref. + Solution: + Try to deserialize reference. In case of exception, try to deserialize it as given ObjectType. In case of + one more exception, throw it. + TODO: Think how to improve. + */ + try { + return chooseKnownPojo(node, objectCodec); + } catch (UnrecognizedPropertyException unrecognizedPropertyException) { + return readAsObject(node, objectCodec); + } + } + + private Object chooseKnownPojo(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + JsonNode ref = jsonNode.get("$ref"); + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + if (isMultiFormatSchema(jsonNode)) { + return jsonParser.readValueAs(MultiFormatSchema.class); + } + + if (ref != null) { + return jsonParser.readValueAs(Reference.class); + } else { + return jsonParser.readValueAs(Schema.class); + } + } + } + + private Object readAsObject(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + return jsonParser.readValueAs(Schema.class); + } + } + + private boolean isMultiFormatSchema(@NotNull JsonNode jsonNode) { + JsonNode schemaFormat = jsonNode.get("schemaFormat"); + JsonNode schema = jsonNode.get("schema"); + + return (schemaFormat != null) && (schema != null); + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/MessageTrait.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/MessageTrait.java new file mode 100644 index 00000000..19417966 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/MessageTrait.java @@ -0,0 +1,156 @@ +package com.asyncapi.v3._0_0.model.channel.message; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.jackson.model.ExternalDocumentationDeserializer; +import com.asyncapi.v3._0_0.jackson.model.TagsDeserializer; +import com.asyncapi.v3._0_0.jackson.model.channel.message.MessageCorrelationIdDeserializer; +import com.asyncapi.v3._0_0.jackson.model.channel.message.MessageHeadersDeserializer; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.asyncapi.v3._0_0.model.Tag; +import com.asyncapi.v3.binding.message.MessageBinding; +import com.asyncapi.v3.jackson.binding.message.MessageBindingsDeserializer; +import com.asyncapi.v3.schema.MultiFormatSchema; +import com.asyncapi.v3.schema.Schema; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.List; +import java.util.Map; + +/** + * Describes a message received on a given channel and operation. + * + * @version 3.0.0 + * @see Message + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MessageTrait extends ExtendableObject { + + /** + * Unique string used to identify the message. + *

+ * The id MUST be unique among all messages described in the API. The messageId value is case-sensitive. + * Tools and libraries MAY use the messageId to uniquely identify a message, therefore, it is RECOMMENDED to + * follow common programming naming conventions. + */ + @Nullable + private String messageId; + + /** + * Schema definition of the application headers. + *

+ * Schema MUST be a map of key-value pairs. + *

+ * It MUST NOT define the protocol headers. + *

+ * If this is a Schema Object, then the schemaFormat will be assumed to + * be "application/vnd.aai.asyncapi+json;version=asyncapi" where the version + * is equal to the AsyncAPI Version String. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link Schema}
  • + *
  • {@link MultiFormatSchema}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = MessageHeadersDeserializer.class) + private Object headers; + + /** + * Definition of the correlation ID used for message tracing or matching. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link CorrelationId}
  • + *
+ */ + @JsonDeserialize(using = MessageCorrelationIdDeserializer.class) + private Object correlationId; + + /** + * The content type to use when encoding/decoding a message's payload. The value MUST be a specific media type + * (e.g. application/json). When omitted, the value MUST be the one specified on the defaultContentType field. + */ + @Nullable + private String contentType; + + /** + * A machine-friendly name for the message. + */ + @Nullable + private String name; + + /** + * A human-friendly title for the message. + */ + @Nullable + private String title; + + /** + * A short summary of what the message is about. + */ + @Nullable + private String summary; + + /** + * A verbose explanation of the message. CommonMark syntax can be used for rich text representation. + */ + @Nullable + private String description; + + /** + * A map where the keys describe the name of the protocol and the values describe protocol-specific definitions for the message. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link MessageBinding}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = MessageBindingsDeserializer.class) + private Map bindings; + + /** + * List of examples. + */ + @Nullable + private List examples; + + /** + * A list of tags for logical grouping and categorization of messages. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link Tag}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = TagsDeserializer.class) + private List tags; + + /** + * Additional external documentation for this channel. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link ExternalDocumentation}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = ExternalDocumentationDeserializer.class) + private Object externalDocs; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/message/MessageBindingsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/message/MessageBindingsDeserializer.java new file mode 100644 index 00000000..a40a2fe1 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/message/MessageBindingsDeserializer.java @@ -0,0 +1,68 @@ +package com.asyncapi.v3.jackson.binding.message; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3.binding.message.amqp.AMQPMessageBinding; +import com.asyncapi.v3.binding.message.amqp1.AMQP1MessageBinding; +import com.asyncapi.v3.binding.message.anypointmq.AnypointMQMessageBinding; +import com.asyncapi.v3.binding.message.googlepubsub.GooglePubSubMessageBinding; +import com.asyncapi.v3.binding.message.http.HTTPMessageBinding; +import com.asyncapi.v3.binding.message.ibmmq.IBMMQMessageBinding; +import com.asyncapi.v3.binding.message.jms.JMSMessageBinding; +import com.asyncapi.v3.binding.message.kafka.KafkaMessageBinding; +import com.asyncapi.v3.binding.message.mercure.MercureMessageBinding; +import com.asyncapi.v3.binding.message.mqtt.MQTTMessageBinding; +import com.asyncapi.v3.binding.message.mqtt5.MQTT5MessageBinding; +import com.asyncapi.v3.binding.message.nats.NATSMessageBinding; +import com.asyncapi.v3.binding.message.pulsar.PulsarMessageBinding; +import com.asyncapi.v3.binding.message.redis.RedisMessageBinding; +import com.asyncapi.v3.binding.message.sns.SNSMessageBinding; +import com.asyncapi.v3.binding.message.solace.SolaceMessageBinding; +import com.asyncapi.v3.binding.message.sqs.SQSMessageBinding; +import com.asyncapi.v3.binding.message.stomp.STOMPMessageBinding; +import com.asyncapi.v3.binding.message.ws.WebSocketsMessageBinding; +import com.asyncapi.v3.jackson.BindingsMapDeserializer; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.JsonNode; + +import java.io.IOException; + +/** + * Serializes message bindings map. + * + * @author Pavel Bodiachevskii + */ +public class MessageBindingsDeserializer extends BindingsMapDeserializer { + + public Object chooseKnownPojo(String bindingKey, JsonNode binding, ObjectCodec objectCodec) throws IOException { + try (JsonParser jsonParser = binding.traverse(objectCodec)) { + if (binding.get("$ref" ) != null) { + return jsonParser.readValueAs(Reference.class); + } + + switch (bindingKey) { + case "amqp": return jsonParser.readValueAs(AMQPMessageBinding.class); + case "amqp1": return jsonParser.readValueAs(AMQP1MessageBinding.class); + case "anypointmq": return jsonParser.readValueAs(AnypointMQMessageBinding.class); + case "googlepubsub": return jsonParser.readValueAs(GooglePubSubMessageBinding.class); + case "http": return jsonParser.readValueAs(HTTPMessageBinding.class); + case "ibmmq": return jsonParser.readValueAs(IBMMQMessageBinding.class); + case "jms": return jsonParser.readValueAs(JMSMessageBinding.class); + case "kafka": return jsonParser.readValueAs(KafkaMessageBinding.class); + case "mercure": return jsonParser.readValueAs(MercureMessageBinding.class); + case "mqtt": return jsonParser.readValueAs(MQTTMessageBinding.class); + case "mqtt5": return jsonParser.readValueAs(MQTT5MessageBinding.class); + case "nats": return jsonParser.readValueAs(NATSMessageBinding.class); + case "pulsar": return jsonParser.readValueAs(PulsarMessageBinding.class); + case "redis": return jsonParser.readValueAs(RedisMessageBinding.class); + case "sns": return jsonParser.readValueAs(SNSMessageBinding.class); + case "solace": return jsonParser.readValueAs(SolaceMessageBinding.class); + case "sqs": return jsonParser.readValueAs(SQSMessageBinding.class); + case "stomp": return jsonParser.readValueAs(STOMPMessageBinding.class); + case "ws": return jsonParser.readValueAs(WebSocketsMessageBinding.class); + default: return null; + } + } + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTraitTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTraitTest.kt new file mode 100644 index 00000000..afaf90a2 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTraitTest.kt @@ -0,0 +1,216 @@ +package com.asyncapi.v3._0_0.model.channel.message + +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3._0_0.model.ExternalDocumentation +import com.asyncapi.v3._0_0.model.Tag +import com.asyncapi.v3.schema.Schema +import com.asyncapi.v3.schema.MultiFormatSchema +import com.asyncapi.v3.binding.message.amqp.AMQPMessageBindingTest +import com.asyncapi.v3.binding.message.anypointmq.AnypointMQMessageBindingTest +import com.asyncapi.v3.binding.message.googlepubsub.GooglePubSubMessageBindingTest +import com.asyncapi.v3.binding.message.http.HTTPMessageBindingTest +import com.asyncapi.v3.binding.message.ibmmq.IBMMQMessageBindingTest +import com.asyncapi.v3.binding.message.kafka.KafkaMessageBindingTest +import com.asyncapi.v3.binding.message.mqtt.MQTTMessageBindingTest + +class MessageTraitTestWithSchema: SerDeTest() { + + override fun objectClass() = MessageTrait::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/message/messageTrait.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/message/messageTrait - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/message/messageTrait - wrongly extended.json" + + override fun build(): MessageTrait { + return MessageTrait.builder() + .messageId("userSignup") + .headers(Schema.builder() + .type("object") + .properties(mapOf( + Pair( + "correlationId", + Schema.builder() + .description("Correlation ID set by application") + .type("string") + .build() + ), + Pair( + "applicationInstanceId", + Schema.builder() + .description("Unique identifier for a given instance of the publishing application") + .type("string") + .build() + ) + )) + .build() + ) + .correlationId(CorrelationId("Default Correlation ID", "\$message.header#/correlationId")) + .contentType("application/json") + .name("UserSignup") + .title("User signup") + .summary("Action to sign a user up.") + .description("A longer description") + .tags(listOf( + Tag("user", null, null), + Tag("signup", null, null), + Tag("register", null, null), + )) + .externalDocs(ExternalDocumentation("User sign up rules", "messages/sign-up-rules")) + .bindings(mapOf( + Pair("amqp", AMQPMessageBindingTest().build()), + Pair("amqp1", Reference("#/components/messageBindings/amqp1")), + Pair("anypointmq", AnypointMQMessageBindingTest().build()), + Pair("googlepubsub", GooglePubSubMessageBindingTest().build()), + Pair("http", HTTPMessageBindingTest().build()), + Pair("ibmmq", IBMMQMessageBindingTest().build()), + Pair("jms", Reference("#/components/messageBindings/jms")), + Pair("kafka", KafkaMessageBindingTest().build()), + Pair("mercure", Reference("#/components/messageBindings/mercure")), + Pair("mqtt", MQTTMessageBindingTest().build()), + Pair("mqtt5", Reference("#/components/messageBindings/mqtt5")), + Pair("nats", Reference("#/components/messageBindings/nats")), + Pair("pulsar", Reference("#/components/messageBindings/pulsar")), + Pair("redis", Reference("#/components/messageBindings/redis")), + Pair("sns", Reference("#/components/messageBindings/sns")), + Pair("solace", Reference("#/components/messageBindings/solace")), + Pair("sqs", Reference("#/components/messageBindings/sqs")), + Pair("stomp", Reference("#/components/messageBindings/stomp")), + Pair("ws", Reference("#/components/messageBindings/ws")) + )) + .examples(listOf(MessageExampleTest().build())) + .build() + } + +} + +class MessageTraitTestWithReference: SerDeTest() { + + override fun objectClass() = MessageTrait::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/message/messageTrait with reference.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/message/messageTrait with reference - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/message/messageTrait with reference - wrongly extended.json" + + override fun build(): MessageTrait { + return MessageTrait.builder() + .messageId("userSignup") + .headers(Reference("#/components/messages/message-header")) + .correlationId(Reference("#/components/messages/message-correlation-id")) + .contentType("application/json") + .name("UserSignup") + .title("User signup") + .summary("Action to sign a user up.") + .description("A longer description") + .tags(listOf( + Tag("user", null, null), + Tag("signup", null, null), + Tag("register", null, null), + Reference("#/components/tags/tag") + )) + .externalDocs(Reference("#/components/externalDocs/external-doc")) + .bindings(mapOf( + Pair("amqp", AMQPMessageBindingTest().build()), + Pair("amqp1", Reference("#/components/messageBindings/amqp1")), + Pair("anypointmq", AnypointMQMessageBindingTest().build()), + Pair("googlepubsub", GooglePubSubMessageBindingTest().build()), + Pair("http", HTTPMessageBindingTest().build()), + Pair("ibmmq", IBMMQMessageBindingTest().build()), + Pair("jms", Reference("#/components/messageBindings/jms")), + Pair("kafka", KafkaMessageBindingTest().build()), + Pair("mercure", Reference("#/components/messageBindings/mercure")), + Pair("mqtt", MQTTMessageBindingTest().build()), + Pair("mqtt5", Reference("#/components/messageBindings/mqtt5")), + Pair("nats", Reference("#/components/messageBindings/nats")), + Pair("pulsar", Reference("#/components/messageBindings/pulsar")), + Pair("redis", Reference("#/components/messageBindings/redis")), + Pair("sns", Reference("#/components/messageBindings/sns")), + Pair("solace", Reference("#/components/messageBindings/solace")), + Pair("sqs", Reference("#/components/messageBindings/sqs")), + Pair("stomp", Reference("#/components/messageBindings/stomp")), + Pair("ws", Reference("#/components/messageBindings/ws")) + )) + .examples(listOf(MessageExampleTest().build())) + .build() + } + +} + +class MessageTraitTestWithMultiFormatSchema: SerDeTest() { + + override fun objectClass() = MessageTrait::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/message/messageTrait 2.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/message/messageTrait 2 - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/message/messageTrait 2 - wrongly extended.json" + + override fun build(): MessageTrait { + return MessageTrait.builder() + .messageId("userSignup") + .headers(MultiFormatSchema.builder() + .schemaFormat("application/vnd.aai.asyncapi+json;version=3.0.0") + .schema(linkedMapOf( + Pair("type", "object"), + Pair("properties", mapOf( + Pair( + "correlationId", + mapOf( + Pair("description", "Correlation ID set by application"), + Pair("type", "string") + ) + ), + Pair( + "applicationInstanceId", + mapOf( + Pair("description", "Unique identifier for a given instance of the publishing application"), + Pair("type", "string") + ) + ) + )) + )).build() + ) + .correlationId(Reference("#/components/messages/message-correlation-id")) + .contentType("application/json") + .name("UserSignup") + .title("User signup") + .summary("Action to sign a user up.") + .description("A longer description") + .tags(listOf( + Tag("user", null, null), + Tag("signup", null, null), + Tag("register", null, null), + Reference("#/components/tags/tag") + )) + .externalDocs(Reference("#/components/externalDocs/external-doc")) + .bindings(mapOf( + Pair("amqp", AMQPMessageBindingTest().build()), + Pair("amqp1", Reference("#/components/messageBindings/amqp1")), + Pair("anypointmq", AnypointMQMessageBindingTest().build()), + Pair("googlepubsub", GooglePubSubMessageBindingTest().build()), + Pair("http", HTTPMessageBindingTest().build()), + Pair("ibmmq", IBMMQMessageBindingTest().build()), + Pair("jms", Reference("#/components/messageBindings/jms")), + Pair("kafka", KafkaMessageBindingTest().build()), + Pair("mercure", Reference("#/components/messageBindings/mercure")), + Pair("mqtt", MQTTMessageBindingTest().build()), + Pair("mqtt5", Reference("#/components/messageBindings/mqtt5")), + Pair("nats", Reference("#/components/messageBindings/nats")), + Pair("pulsar", Reference("#/components/messageBindings/pulsar")), + Pair("redis", Reference("#/components/messageBindings/redis")), + Pair("sns", Reference("#/components/messageBindings/sns")), + Pair("solace", Reference("#/components/messageBindings/solace")), + Pair("sqs", Reference("#/components/messageBindings/sqs")), + Pair("stomp", Reference("#/components/messageBindings/stomp")), + Pair("ws", Reference("#/components/messageBindings/ws")) + )) + .examples(listOf(MessageExampleTest().build())) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - extended.json new file mode 100644 index 00000000..b16b6674 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - extended.json @@ -0,0 +1,503 @@ +{ + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - wrongly extended.json new file mode 100644 index 00000000..b780fa7c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - wrongly extended.json @@ -0,0 +1,156 @@ +{ + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - extended.json new file mode 100644 index 00000000..fa5202ce --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - extended.json @@ -0,0 +1,377 @@ +{ + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - wrongly extended.json new file mode 100644 index 00000000..45defcb4 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - wrongly extended.json @@ -0,0 +1,378 @@ +{ + "messageId" : "userSignup", + "headers": { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property": {} + }, + "ext-number" : 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2.json new file mode 100644 index 00000000..77c98c8b --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2.json @@ -0,0 +1,152 @@ +{ + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - extended.json new file mode 100644 index 00000000..c72450c7 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - extended.json @@ -0,0 +1,364 @@ +{ + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - wrongly extended.json new file mode 100644 index 00000000..659f5936 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - wrongly extended.json @@ -0,0 +1,145 @@ +{ + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property": {} + }, + "ext-number" : 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference.json new file mode 100644 index 00000000..cdc5730a --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference.json @@ -0,0 +1,139 @@ +{ + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait.json new file mode 100644 index 00000000..1d7388c1 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait.json @@ -0,0 +1,150 @@ +{ + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] +} \ No newline at end of file From cde8684ed5577b97eb73ac28127bd9cf99bfcdd7 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Mon, 2 Oct 2023 00:56:53 +0400 Subject: [PATCH 38/54] feat(3.0.0): Message --- .../message/MessagePayloadDeserializer.java | 77 + .../message/MessageTraitsDeserializer.java | 24 + .../_0_0/model/channel/message/Message.java | 184 ++ .../_0_0/model/channel/message/MessageTest.kt | 260 +++ .../channel/message/message - extended.json | 1825 +++++++++++++++++ .../message/message - wrongly extended.json | 608 ++++++ .../channel/message/message 2 - extended.json | 1616 +++++++++++++++ .../message/message 2 - wrongly extended.json | 613 ++++++ .../model/channel/message/message 2.json | 607 ++++++ .../message with reference - extended.json | 1594 ++++++++++++++ ...age with reference - wrongly extended.json | 591 ++++++ .../message/message with reference.json | 585 ++++++ .../3.0.0/model/channel/message/message.json | 602 ++++++ 13 files changed, 9186 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessagePayloadDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageTraitsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/Message.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessagePayloadDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessagePayloadDeserializer.java new file mode 100644 index 00000000..dcf51156 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessagePayloadDeserializer.java @@ -0,0 +1,77 @@ +package com.asyncapi.v3._0_0.jackson.model.channel.message; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3.schema.MultiFormatSchema; +import com.asyncapi.v3.schema.Schema; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException; +import org.jetbrains.annotations.NotNull; + +import java.io.IOException; + +/** + * Serializes message traits list. + * + * @author Pavel Bodiachevskii + */ +public class MessagePayloadDeserializer extends JsonDeserializer { + + @Override + public Object deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException { + ObjectCodec objectCodec = p.getCodec(); + JsonNode node = objectCodec.readTree(p); + + /* + Problem: + Both, Reference class and Schema class have $ref field. + So, this is only reason why I receive next exception: + "com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: + Unrecognized field "title" (class com.asyncapi.v2._6_0.model.Reference), + not marked as ignorable (one known property: "$ref"])" + in case when Schema contains $ref. + Solution: + Try to deserialize reference. In case of exception, try to deserialize it as given ObjectType. In case of + one more exception, throw it. + TODO: Think how to improve. + */ + try { + return chooseKnownPojo(node, objectCodec); + } catch (UnrecognizedPropertyException unrecognizedPropertyException) { + return readAsObject(node, objectCodec); + } + } + + private Object chooseKnownPojo(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + JsonNode ref = jsonNode.get("$ref"); + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + if (isMultiFormatSchema(jsonNode)) { + return jsonParser.readValueAs(MultiFormatSchema.class); + } + + if (ref != null) { + return jsonParser.readValueAs(Reference.class); + } else { + return jsonParser.readValueAs(Schema.class); + } + } + } + + private Object readAsObject(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + return jsonParser.readValueAs(Schema.class); + } + } + + private boolean isMultiFormatSchema(@NotNull JsonNode jsonNode) { + JsonNode schemaFormat = jsonNode.get("schemaFormat"); + JsonNode schema = jsonNode.get("schema"); + + return (schemaFormat != null) && (schema != null); + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageTraitsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageTraitsDeserializer.java new file mode 100644 index 00000000..c5e5058a --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessageTraitsDeserializer.java @@ -0,0 +1,24 @@ +package com.asyncapi.v3._0_0.jackson.model.channel.message; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.channel.message.MessageTrait; +import com.asyncapi.v3.jackson.ListOfReferencesOrObjectsDeserializer; + +/** + * Deserializes message traits. + * + * @author Pavel Bodiachevskii + */ +public class MessageTraitsDeserializer extends ListOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return MessageTrait.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/Message.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/Message.java new file mode 100644 index 00000000..c8ab1ea0 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/message/Message.java @@ -0,0 +1,184 @@ +package com.asyncapi.v3._0_0.model.channel.message; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.jackson.model.ExternalDocumentationDeserializer; +import com.asyncapi.v3._0_0.jackson.model.TagsDeserializer; +import com.asyncapi.v3._0_0.jackson.model.channel.message.MessageCorrelationIdDeserializer; +import com.asyncapi.v3._0_0.jackson.model.channel.message.MessageTraitsDeserializer; +import com.asyncapi.v3._0_0.jackson.model.channel.message.MessageHeadersDeserializer; +import com.asyncapi.v3._0_0.jackson.model.channel.message.MessagePayloadDeserializer; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.asyncapi.v3._0_0.model.Tag; +import com.asyncapi.v3.jackson.binding.message.MessageBindingsDeserializer; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.List; +import java.util.Map; + +/** + * Describes a message received on a given channel and operation. + * + * @version 3.0.0 + * @see Message + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class Message extends ExtendableObject { + + /** + * Unique string used to identify the message. + *

+ * The id MUST be unique among all messages described in the API. The messageId value is case-sensitive. + * Tools and libraries MAY use the messageId to uniquely identify a message, therefore, it is RECOMMENDED to + * follow common programming naming conventions. + */ + @Nullable + private String messageId; + + /** + * Schema definition of the application headers. + *

+ * Schema MUST be a map of key-value pairs. + *

+ * It MUST NOT define the protocol headers. + *

+ * If this is a Schema Object, then the schemaFormat will be assumed to + * be "application/vnd.aai.asyncapi+json;version=asyncapi" where the version + * is equal to the AsyncAPI Version String. + *

+ * MUST BE: + *

    + *
  • {@link com.asyncapi.v3.Reference}
  • + *
  • {@link com.asyncapi.v3.schema.Schema}
  • + *
  • {@link com.asyncapi.v3.schema.MultiFormatSchema}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = MessageHeadersDeserializer.class) + private Object headers; + + /** + * Definition of the message payload. If this is a Schema Object, then the schemaFormat will be assumed to be + * "application/vnd.aai.asyncapi+json;version=asyncapi" where the version is equal to the AsyncAPI Version String. + *

+ * MUST BE: + *

    + *
  • {@link com.asyncapi.v3.Reference}
  • + *
  • {@link com.asyncapi.v3.schema.Schema}
  • + *
  • {@link com.asyncapi.v3.schema.MultiFormatSchema}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = MessagePayloadDeserializer.class) + private Object payload; + + /** + * Definition of the correlation ID used for message tracing or matching. + *

+ * MUST BE: + *

    + *
  • {@link com.asyncapi.v3.Reference}
  • + *
  • {@link CorrelationId}
  • + *
+ */ + @JsonDeserialize(using = MessageCorrelationIdDeserializer.class) + private Object correlationId; + + /** + * The content type to use when encoding/decoding a message's payload. The value MUST be a specific media type + * (e.g. application/json). When omitted, the value MUST be the one specified on the defaultContentType field. + */ + @Nullable + private String contentType; + + /** + * A machine-friendly name for the message. + */ + @Nullable + private String name; + + /** + * A human-friendly title for the message. + */ + @Nullable + private String title; + + /** + * A short summary of what the message is about. + */ + @Nullable + private String summary; + + /** + * A verbose explanation of the message. CommonMark syntax can be used for rich text representation. + */ + @Nullable + private String description; + + /** + * A map where the keys describe the name of the protocol and the values describe protocol-specific definitions for the message. + *

+ * MUST BE: + *

    + *
  • {@link com.asyncapi.v3.Reference}
  • + *
  • {@link com.asyncapi.v3.binding.message.MessageBinding}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = MessageBindingsDeserializer.class) + private Map bindings; + + /** + * List of examples. + */ + @Nullable + private List examples; + + /** + * A list of traits to apply to the message object. Traits MUST be merged using traits merge mechanism. + * The resulting object MUST be a valid Message Object. + *

+ * MUST BE: + *

    + *
  • {@link com.asyncapi.v3.Reference}
  • + *
  • {@link com.asyncapi.v3._0_0.model.channel.message.MessageTrait}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = MessageTraitsDeserializer.class) + private List traits; + + /** + * A list of tags for logical grouping and categorization of messages. + *

+ * MUST BE: + *

    + *
  • {@link com.asyncapi.v3.Reference}
  • + *
  • {@link Tag}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = TagsDeserializer.class) + private List tags; + + /** + * Additional external documentation for this channel. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link ExternalDocumentation}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = ExternalDocumentationDeserializer.class) + private Object externalDocs; + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTest.kt new file mode 100644 index 00000000..7617c281 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTest.kt @@ -0,0 +1,260 @@ +package com.asyncapi.v3._0_0.model.channel.message + +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3._0_0.model.ExternalDocumentation +import com.asyncapi.v3._0_0.model.Tag +import com.asyncapi.v3.schema.Schema +import com.asyncapi.v3.schema.MultiFormatSchema +import com.asyncapi.v3.binding.message.amqp.AMQPMessageBindingTest +import com.asyncapi.v3.binding.message.anypointmq.AnypointMQMessageBindingTest +import com.asyncapi.v3.binding.message.googlepubsub.GooglePubSubMessageBindingTest +import com.asyncapi.v3.binding.message.http.HTTPMessageBindingTest +import com.asyncapi.v3.binding.message.ibmmq.IBMMQMessageBindingTest +import com.asyncapi.v3.binding.message.kafka.KafkaMessageBindingTest +import com.asyncapi.v3.binding.message.mqtt.MQTTMessageBindingTest + +class MessageTestWithSchema: SerDeTest() { + + override fun objectClass() = Message::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/message/message.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/message/message - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/message/message - wrongly extended.json" + + override fun build(): Message { + return Message.builder() + .messageId("userSignup") + .headers(Schema.builder() + .type("object") + .properties(mapOf( + Pair( + "correlationId", + Schema.builder() + .description("Correlation ID set by application") + .type("string") + .build() + ), + Pair( + "applicationInstanceId", + Schema.builder() + .description("Unique identifier for a given instance of the publishing application") + .type("string") + .build() + ) + )) + .build() + ) + .payload(Schema.builder() + .type("object") + .properties(mapOf( + Pair( + "metric", + Schema.builder() + .description("Metric set by application") + .type("string") + .build() + ) + )) + .build() + ) + .correlationId(CorrelationId("Default Correlation ID", "\$message.header#/correlationId")) + .contentType("application/json") + .name("UserSignup") + .title("User signup") + .summary("Action to sign a user up.") + .description("A longer description") + .tags(listOf( + Tag("user", null, null), + Tag("signup", null, null), + Tag("register", null, null), + )) + .externalDocs(ExternalDocumentation("User sign up rules", "messages/sign-up-rules")) + .bindings(mapOf( + Pair("amqp", AMQPMessageBindingTest().build()), + Pair("amqp1", Reference("#/components/messageBindings/amqp1")), + Pair("anypointmq", AnypointMQMessageBindingTest().build()), + Pair("googlepubsub", GooglePubSubMessageBindingTest().build()), + Pair("http", HTTPMessageBindingTest().build()), + Pair("ibmmq", IBMMQMessageBindingTest().build()), + Pair("jms", Reference("#/components/messageBindings/jms")), + Pair("kafka", KafkaMessageBindingTest().build()), + Pair("mercure", Reference("#/components/messageBindings/mercure")), + Pair("mqtt", MQTTMessageBindingTest().build()), + Pair("mqtt5", Reference("#/components/messageBindings/mqtt5")), + Pair("nats", Reference("#/components/messageBindings/nats")), + Pair("pulsar", Reference("#/components/messageBindings/pulsar")), + Pair("redis", Reference("#/components/messageBindings/redis")), + Pair("sns", Reference("#/components/messageBindings/sns")), + Pair("solace", Reference("#/components/messageBindings/solace")), + Pair("sqs", Reference("#/components/messageBindings/sqs")), + Pair("stomp", Reference("#/components/messageBindings/stomp")), + Pair("ws", Reference("#/components/messageBindings/ws")) + )) + .examples(listOf(MessageExampleTest().build())) + .traits(listOf( + MessageTraitTestWithSchema().build(), + MessageTraitTestWithReference().build(), + MessageTraitTestWithMultiFormatSchema().build() + )) + .build() + } + +} + +class MessageTestWithReference: SerDeTest() { + + override fun objectClass() = Message::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/message/message with reference.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/message/message with reference - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/message/message with reference - wrongly extended.json" + + override fun build(): Message { + return Message.builder() + .messageId("userSignup") + .headers(Reference("#/components/messages/message-header")) + .payload(Reference("#/components/messages/message-payload")) + .correlationId(Reference("#/components/messages/message-correlation-id")) + .contentType("application/json") + .name("UserSignup") + .title("User signup") + .summary("Action to sign a user up.") + .description("A longer description") + .tags(listOf( + Tag("user", null, null), + Tag("signup", null, null), + Tag("register", null, null), + Reference("#/components/tags/tag") + )) + .externalDocs(Reference("#/components/externalDocs/external-doc")) + .bindings(mapOf( + Pair("amqp", AMQPMessageBindingTest().build()), + Pair("amqp1", Reference("#/components/messageBindings/amqp1")), + Pair("anypointmq", AnypointMQMessageBindingTest().build()), + Pair("googlepubsub", GooglePubSubMessageBindingTest().build()), + Pair("http", HTTPMessageBindingTest().build()), + Pair("ibmmq", IBMMQMessageBindingTest().build()), + Pair("jms", Reference("#/components/messageBindings/jms")), + Pair("kafka", KafkaMessageBindingTest().build()), + Pair("mercure", Reference("#/components/messageBindings/mercure")), + Pair("mqtt", MQTTMessageBindingTest().build()), + Pair("mqtt5", Reference("#/components/messageBindings/mqtt5")), + Pair("nats", Reference("#/components/messageBindings/nats")), + Pair("pulsar", Reference("#/components/messageBindings/pulsar")), + Pair("redis", Reference("#/components/messageBindings/redis")), + Pair("sns", Reference("#/components/messageBindings/sns")), + Pair("solace", Reference("#/components/messageBindings/solace")), + Pair("sqs", Reference("#/components/messageBindings/sqs")), + Pair("stomp", Reference("#/components/messageBindings/stomp")), + Pair("ws", Reference("#/components/messageBindings/ws")) + )) + .examples(listOf(MessageExampleTest().build())) + .traits(listOf( + MessageTraitTestWithSchema().build(), + MessageTraitTestWithReference().build(), + MessageTraitTestWithMultiFormatSchema().build() + )) + .build() + } + +} + +class MessageTestWithMultiFormatSchema: SerDeTest() { + + override fun objectClass() = Message::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/message/message 2.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/message/message 2 - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/message/message 2 - wrongly extended.json" + + override fun build(): Message { + return Message.builder() + .messageId("userSignup") + .headers(MultiFormatSchema.builder() + .schemaFormat("application/vnd.aai.asyncapi+json;version=3.0.0") + .schema(linkedMapOf( + Pair("type", "object"), + Pair("properties", mapOf( + Pair( + "correlationId", + mapOf( + Pair("description", "Correlation ID set by application"), + Pair("type", "string") + ) + ), + Pair( + "applicationInstanceId", + mapOf( + Pair("description", "Unique identifier for a given instance of the publishing application"), + Pair("type", "string") + ) + ) + )) + )).build() + ) + .payload(MultiFormatSchema.builder() + .schemaFormat("application/vnd.aai.asyncapi+json;version=3.0.0") + .schema(linkedMapOf( + Pair("type", "object"), + Pair("properties", mapOf( + Pair( + "metric", + mapOf( + Pair("description", "Metric set by application"), + Pair("type", "string") + ) + ) + )) + )).build() + ) + .correlationId(Reference("#/components/messages/message-correlation-id")) + .contentType("application/json") + .name("UserSignup") + .title("User signup") + .summary("Action to sign a user up.") + .description("A longer description") + .tags(listOf( + Tag("user", null, null), + Tag("signup", null, null), + Tag("register", null, null), + Reference("#/components/tags/tag") + )) + .externalDocs(Reference("#/components/externalDocs/external-doc")) + .bindings(mapOf( + Pair("amqp", AMQPMessageBindingTest().build()), + Pair("amqp1", Reference("#/components/messageBindings/amqp1")), + Pair("anypointmq", AnypointMQMessageBindingTest().build()), + Pair("googlepubsub", GooglePubSubMessageBindingTest().build()), + Pair("http", HTTPMessageBindingTest().build()), + Pair("ibmmq", IBMMQMessageBindingTest().build()), + Pair("jms", Reference("#/components/messageBindings/jms")), + Pair("kafka", KafkaMessageBindingTest().build()), + Pair("mercure", Reference("#/components/messageBindings/mercure")), + Pair("mqtt", MQTTMessageBindingTest().build()), + Pair("mqtt5", Reference("#/components/messageBindings/mqtt5")), + Pair("nats", Reference("#/components/messageBindings/nats")), + Pair("pulsar", Reference("#/components/messageBindings/pulsar")), + Pair("redis", Reference("#/components/messageBindings/redis")), + Pair("sns", Reference("#/components/messageBindings/sns")), + Pair("solace", Reference("#/components/messageBindings/solace")), + Pair("sqs", Reference("#/components/messageBindings/sqs")), + Pair("stomp", Reference("#/components/messageBindings/stomp")), + Pair("ws", Reference("#/components/messageBindings/ws")) + )) + .examples(listOf(MessageExampleTest().build())) + .traits(listOf( + MessageTraitTestWithSchema().build(), + MessageTraitTestWithReference().build(), + MessageTraitTestWithMultiFormatSchema().build() + )) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - extended.json new file mode 100644 index 00000000..89842f35 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - extended.json @@ -0,0 +1,1825 @@ +{ + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - wrongly extended.json new file mode 100644 index 00000000..5a27b02c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - wrongly extended.json @@ -0,0 +1,608 @@ +{ + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ], + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - extended.json new file mode 100644 index 00000000..c59e5593 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - extended.json @@ -0,0 +1,1616 @@ +{ + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - wrongly extended.json new file mode 100644 index 00000000..f80d7fc1 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - wrongly extended.json @@ -0,0 +1,613 @@ +{ + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ], + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2.json new file mode 100644 index 00000000..af63777e --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2.json @@ -0,0 +1,607 @@ +{ + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - extended.json new file mode 100644 index 00000000..c0ad7e10 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - extended.json @@ -0,0 +1,1594 @@ +{ + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - wrongly extended.json new file mode 100644 index 00000000..c9fab724 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - wrongly extended.json @@ -0,0 +1,591 @@ +{ + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ], + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference.json new file mode 100644 index 00000000..75614fd8 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference.json @@ -0,0 +1,585 @@ +{ + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message.json new file mode 100644 index 00000000..4b6fcdbf --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message.json @@ -0,0 +1,602 @@ +{ + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] +} \ No newline at end of file From d904d037c8cc195de046e8fcfbcc7b145bb20240 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Mon, 2 Oct 2023 03:07:00 +0400 Subject: [PATCH 39/54] fix(3.0.0): SchemasAdditionalPropertiesDeserializer fix schema version --- .../jackson/schema/SchemasAdditionalPropertiesDeserializer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/schema/SchemasAdditionalPropertiesDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/schema/SchemasAdditionalPropertiesDeserializer.java index 270affd4..659d70fe 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/schema/SchemasAdditionalPropertiesDeserializer.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/schema/SchemasAdditionalPropertiesDeserializer.java @@ -1,6 +1,6 @@ package com.asyncapi.v3.jackson.schema; -import com.asyncapi.v2.schema.Schema; +import com.asyncapi.v3.schema.Schema; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.ObjectCodec; From ffb19a37fa3ea942bc207e7618fa96e85a467351 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Mon, 2 Oct 2023 03:13:49 +0400 Subject: [PATCH 40/54] feat(3.0.0): ChannelBinding --- .../v3/binding/channel/ChannelBinding.java | 13 ++ .../channel/amqp/AMQPChannelBinding.java | 62 ++++++ .../binding/channel/amqp/AMQPChannelType.java | 24 +++ .../AMQPChannelExchangeProperties.java | 71 +++++++ .../exchange/AMQPChannelExchangeType.java | 33 +++ .../queue/AMQPChannelQueueProperties.java | 71 +++++++ .../channel/amqp1/AMQP1ChannelBinding.java | 21 ++ .../anypointmq/AnypointMQChannelBinding.java | 58 +++++ .../AnypointMQChannelDestinationType.java | 25 +++ .../GooglePubSubChannelBinding.java | 83 ++++++++ ...oglePubSubChannelMessageStoragePolicy.java | 36 ++++ .../GooglePubSubChannelSchemaSettings.java | 59 ++++++ .../channel/http/HTTPChannelBinding.java | 21 ++ .../channel/ibmmq/IBMMQChannelBinding.java | 88 ++++++++ .../ibmmq/IBMMQChannelDestinationType.java | 20 ++ .../ibmmq/IBMMQChannelQueueProperties.java | 62 ++++++ .../ibmmq/IBMMQChannelTopicProperties.java | 74 +++++++ .../channel/jms/JMSChannelBinding.java | 21 ++ .../channel/kafka/KafkaChannelBinding.java | 76 +++++++ .../kafka/KafkaChannelTopicCleanupPolicy.java | 13 ++ .../kafka/KafkaChannelTopicConfiguration.java | 83 ++++++++ .../mercure/MercureChannelBinding.java | 21 ++ .../channel/mqtt/MQTTChannelBinding.java | 21 ++ .../channel/mqtt5/MQTT5ChannelBinding.java | 21 ++ .../channel/nats/NATSChannelBinding.java | 21 ++ .../channel/pulsar/PulsarChannelBinding.java | 101 +++++++++ .../pulsar/PulsarChannelPersistence.java | 22 ++ .../PulsarChannelRetentionDefinition.java | 44 ++++ .../channel/redis/RedisChannelBinding.java | 21 ++ .../channel/sns/SNSChannelBinding.java | 21 ++ .../channel/solace/SolaceChannelBinding.java | 23 ++ .../channel/sqs/SQSChannelBinding.java | 21 ++ .../channel/stomp/STOMPChannelBinding.java | 21 ++ .../channel/ws/WebSocketsChannelBinding.java | 66 ++++++ .../channel/ws/WebSocketsChannelMethod.java | 13 ++ .../channel/amqp/AMQPChannelBindingTest.kt | 42 ++++ .../AnypointMQChannelBindingTest.kt | 26 +++ .../GooglePubSubChannelBindingTest.kt | 42 ++++ .../channel/ibmmq/IBMMQChannelBindingTest.kt | 35 +++ .../channel/kafka/KafkaChannelBindingTest.kt | 38 ++++ .../pulsar/PulsarChannelBindingTest.kt | 31 +++ .../ws/WebSocketsChannelBindingTest.kt | 53 +++++ .../amqp/amqpChannelBinding - extended.json | 23 ++ ...amqpChannelBinding - wrongly extended.json | 24 +++ .../channel/amqp/amqpChannelBinding.json | 18 ++ .../anypointMQChannelBinding - extended.json | 10 + ...ntMQChannelBinding - wrongly extended.json | 11 + .../anypoint/anypointMQChannelBinding.json | 5 + ...googlePubSubChannelBinding - extended.json | 20 ++ ...bSubChannelBinding - wrongly extended.json | 30 +++ .../googlePubSubChannelBinding.json | 24 +++ .../ibmmq/ibmMQChannelBinding - extended.json | 21 ++ ...bmMQChannelBinding - wrongly extended.json | 22 ++ .../channel/ibmmq/ibmMQChannelBinding.json | 16 ++ .../kafka/kafkaChannelBinding - extended.json | 18 ++ ...afkaChannelBinding - wrongly extended.json | 22 ++ .../channel/kafka/kafkaChannelBinding.json | 16 ++ .../pulsarChannelBinding - extended.json | 18 ++ ...lsarChannelBinding - wrongly extended.json | 22 ++ .../channel/pulsar/pulsarChannelBinding.json | 16 ++ .../webSocketsChannelBinding - extended.json | 199 ++++++++++++++++++ ...ketsChannelBinding - wrongly extended.json | 27 +++ .../channel/ws/webSocketsChannelBinding.json | 21 ++ 63 files changed, 2301 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/AMQPChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/AMQPChannelType.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/exchange/AMQPChannelExchangeProperties.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/exchange/AMQPChannelExchangeType.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/queue/AMQPChannelQueueProperties.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp1/AMQP1ChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelDestinationType.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelMessageStoragePolicy.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelSchemaSettings.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/http/HTTPChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelDestinationType.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelQueueProperties.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelTopicProperties.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/jms/JMSChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelTopicCleanupPolicy.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelTopicConfiguration.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mercure/MercureChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mqtt/MQTTChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mqtt5/MQTT5ChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/nats/NATSChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelPersistence.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelRetentionDefinition.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/redis/RedisChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/sns/SNSChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/solace/SolaceChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/sqs/SQSChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/stomp/STOMPChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelMethod.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/amqp/AMQPChannelBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/kafka/KafkaChannelBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelBindingTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ChannelBinding.java new file mode 100644 index 00000000..f73b6f3e --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ChannelBinding.java @@ -0,0 +1,13 @@ +package com.asyncapi.v3.binding.channel; + +import com.asyncapi.v3.ExtendableObject; +import lombok.EqualsAndHashCode; + +/** + * Describes AsyncAPI channel binding. + * + * @author Pavel Bodiachevskii + */ +@EqualsAndHashCode(callSuper = true) +public class ChannelBinding extends ExtendableObject { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/AMQPChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/AMQPChannelBinding.java new file mode 100644 index 00000000..bed4fa16 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/AMQPChannelBinding.java @@ -0,0 +1,62 @@ +package com.asyncapi.v3.binding.channel.amqp; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import com.asyncapi.v3.binding.channel.amqp.exchange.AMQPChannelExchangeProperties; +import com.asyncapi.v3.binding.channel.amqp.queue.AMQPChannelQueueProperties; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * Describes AMQP 0-9-1 channel binding. + *

+ * Contains information about the channel representation in AMQP. + * + * @version 0.2.0 + * @see AMQP channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes AMQP 0-9-1 channel binding.") +public class AMQPChannelBinding extends ChannelBinding { + + /** + * Defines what type of channel is it. Can be either queue or routingKey (default). + */ + @NotNull + @Builder.Default + @javax.validation.constraints.NotNull + @JsonProperty(value = "is", required = true, defaultValue = "routingKey") + @JsonPropertyDescription("Defines what type of channel is it. Can be either queue or routingKey (default).") + private AMQPChannelType is = AMQPChannelType.ROUTING_KEY; + + /** + * When is=routingKey, this object defines the exchange properties. + */ + @Nullable + @JsonProperty("exchange") + @JsonPropertyDescription("When is=routingKey, this object defines the exchange properties.") + private AMQPChannelExchangeProperties exchange; + + /** + * When is=queue, this object defines the queue properties. + */ + @Nullable + @JsonProperty("queue") + @JsonPropertyDescription("When is=queue, this object defines the queue properties.") + private AMQPChannelQueueProperties queue; + + @Nullable + @Builder.Default + @JsonProperty(value = "bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private final String bindingVersion = "0.2.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/AMQPChannelType.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/AMQPChannelType.java new file mode 100644 index 00000000..e6fe8c81 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/AMQPChannelType.java @@ -0,0 +1,24 @@ +package com.asyncapi.v3.binding.channel.amqp; + +import com.fasterxml.jackson.annotation.JsonAlias; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * Describes AMQP 0-9-1 channel type. + *

+ * Contains information about the type of channel in AMQP. + * + * @version 0.2.0 + * @see AMQP channel binding + * @author Pavel Bodiachevskii + */ +public enum AMQPChannelType { + + @JsonProperty("queue") + QUEUE, + + @JsonProperty("routingKey") + @JsonAlias("routingKey") + ROUTING_KEY + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/exchange/AMQPChannelExchangeProperties.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/exchange/AMQPChannelExchangeProperties.java new file mode 100644 index 00000000..6c7b0465 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/exchange/AMQPChannelExchangeProperties.java @@ -0,0 +1,71 @@ +package com.asyncapi.v3.binding.channel.amqp.exchange; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes AMQP 0-9-1 channel exchange properties. + *

+ * Contains information about the channel exchange properties in AMQP. + * + * @version 0.2.0 + * @see AMQP channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode +@JsonClassDescription("Describes AMQP 0-9-1 channel exchange properties.") +public class AMQPChannelExchangeProperties { + + /** + * The name of the exchange. It MUST NOT exceed 255 characters long. + */ + @Nullable + @javax.validation.constraints.Size( + max = 255, + message = "Exchange name must not exceed 255 characters long." + ) + @JsonProperty("name") + @JsonPropertyDescription("The name of the exchange. It MUST NOT exceed 255 characters long.") + private String name; + + /** + * The type of the exchange. Can be either topic, direct, fanout, default or headers. + */ + @Nullable + @JsonProperty("type") + @JsonPropertyDescription("The type of the exchange. Can be either topic, direct, fanout, default or headers.") + private AMQPChannelExchangeType type; + + /** + * Whether the exchange should survive broker restarts or not. + */ + @Nullable + @JsonProperty("durable") + @JsonPropertyDescription("Whether the exchange should survive broker restarts or not.") + private Boolean durable; + + /** + * Whether the exchange should be deleted when the last queue is unbound from it. + */ + @Nullable + @JsonProperty("autoDelete") + @JsonPropertyDescription("Whether the exchange should be deleted when the last queue is unbound from it.") + private Boolean autoDelete; + + /** + * The virtual host of the exchange. Defaults to /. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "vhost", defaultValue = "/") + @JsonPropertyDescription("The virtual host of the exchange. Defaults to /.") + private String vhost = "/"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/exchange/AMQPChannelExchangeType.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/exchange/AMQPChannelExchangeType.java new file mode 100644 index 00000000..6a4211bc --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/exchange/AMQPChannelExchangeType.java @@ -0,0 +1,33 @@ +package com.asyncapi.v3.binding.channel.amqp.exchange; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * Describes AMQP 0-9-1 channel exchange type. + *

+ * Contains information about the channel exchange type in AMQP. + * + * @version 0.2.0 + * @see AMQP channel binding + * @author Pavel Bodiachevskii + */ +@JsonClassDescription("Describes AMQP 0-9-1 channel exchange type.") +public enum AMQPChannelExchangeType { + + @JsonProperty("topic") + TOPIC, + + @JsonProperty("direct") + DIRECT, + + @JsonProperty("fanout") + FANOUT, + + @JsonProperty("default") + DEFAULT, + + @JsonProperty("headers") + HEADERS + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/queue/AMQPChannelQueueProperties.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/queue/AMQPChannelQueueProperties.java new file mode 100644 index 00000000..18f49c26 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp/queue/AMQPChannelQueueProperties.java @@ -0,0 +1,71 @@ +package com.asyncapi.v3.binding.channel.amqp.queue; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes AMQP 0-9-1 channel queue properties. + *

+ * Contains information about the queue exchange properties in AMQP. + * + * @version 0.2.0 + * @see AMQP channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode +@JsonClassDescription("Describes AMQP 0-9-1 channel queue properties.") +public class AMQPChannelQueueProperties { + + /** + * The name of the queue. It MUST NOT exceed 255 characters long. + */ + @Nullable + @javax.validation.constraints.Size( + max = 255, + message = "Queue name must not exceed 255 characters long." + ) + @JsonProperty("name") + @JsonPropertyDescription("The name of the queue. It MUST NOT exceed 255 characters long.") + private String name; + + /** + * Whether the queue should survive broker restarts or not. + */ + @Nullable + @JsonProperty("durable") + @JsonPropertyDescription("Whether the queue should survive broker restarts or not.") + private Boolean durable; + + /** + * Whether the queue should be used only by one connection or not. + */ + @Nullable + @JsonProperty("exclusive") + @JsonPropertyDescription("Whether the queue should be used only by one connection or not.") + private Boolean exclusive; + + /** + * Whether the queue should be deleted when the last consumer unsubscribes. + */ + @Nullable + @JsonProperty("autoDelete") + @JsonPropertyDescription("Whether the queue should be deleted when the last consumer unsubscribes.") + private Boolean autoDelete; + + /** + * The virtual host of the queue. Defaults to /. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "vhost", defaultValue = "/") + @JsonPropertyDescription("The virtual host of the queue. Defaults to /.") + private String vhost = "/"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp1/AMQP1ChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp1/AMQP1ChannelBinding.java new file mode 100644 index 00000000..b9d5b157 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/amqp1/AMQP1ChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.amqp1; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes AMQP 1.0 channel binding. + * + * @version 0.1.0 + * @see AMQP 1.0 channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AMQP1ChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelBinding.java new file mode 100644 index 00000000..84c63a06 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelBinding.java @@ -0,0 +1,58 @@ +package com.asyncapi.v3.binding.channel.anypointmq; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Anypoint MQ channel binding. + * + * @version 0.0.1 + * @see Anypoint MQ channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes Anypoint MQ channel binding.") +public class AnypointMQChannelBinding extends ChannelBinding { + + /** + * OPTIONAL, defaults to the channel name. + *

+ * The destination (queue or exchange) name for this channel. SHOULD only be specified if the channel name differs + * from the actual destination name, such as when the channel name is not a valid destination name in Anypoint MQ. + */ + @Nullable + @JsonProperty("destination") + @JsonPropertyDescription("The destination (queue or exchange) name for this channel. SHOULD only be specified if the channel name differs from the actual destination name, such as when the channel name is not a valid destination name in Anypoint MQ.") + private String destination; + + /** + * OPTIONAL, defaults to queue. + *

+ * The type of destination, which MUST be either exchange or queue or fifo-queue. + * SHOULD be specified to document the messaging model (publish/subscribe, point-to-point, strict message ordering) + * supported by this channel. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "destinationType", defaultValue = "queue") + @JsonPropertyDescription("The type of destination, which MUST be either exchange or queue or fifo-queue. SHOULD be specified to document the messaging model (publish/subscribe, point-to-point, strict message ordering) supported by this channel.") + private AnypointMQChannelDestinationType destinationType = AnypointMQChannelDestinationType.QUEUE; + + /** + * The version of this binding. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.0.1"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelDestinationType.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelDestinationType.java new file mode 100644 index 00000000..3f42233c --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelDestinationType.java @@ -0,0 +1,25 @@ +package com.asyncapi.v3.binding.channel.anypointmq; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * Describes Anypoint MQ channel destination type. + * + * @version 0.0.1 + * @see Anypoint MQ channel binding + * @author Pavel Bodiachevskii + */ +@JsonClassDescription("Describes Anypoint MQ channel destination type.") +public enum AnypointMQChannelDestinationType { + + @JsonProperty("exchange") + EXCHANGE, + + @JsonProperty("queue") + QUEUE, + + @JsonProperty("fifo-queue") + FIFO_QUEUE + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelBinding.java new file mode 100644 index 00000000..1f93f6c2 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelBinding.java @@ -0,0 +1,83 @@ +package com.asyncapi.v3.binding.channel.googlepubsub; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.Map; + +/** + * Describes Google Cloud Pub/Sub channel binding. + *

+ * The Channel Bindings Object is used to describe the Google Cloud Pub/Sub specific Topic details with AsyncAPI. + * + * @version 0.1.0 + * @see Google Cloud Pub/Sub channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes Google Cloud Pub/Sub channel binding.") +public class GooglePubSubChannelBinding extends ChannelBinding { + + /** + * The Google Cloud Pub/Sub Topic name. + */ + @NotNull + @Builder.Default + @javax.validation.constraints.NotNull + @JsonProperty(value = "topic", required = true) + @JsonPropertyDescription("The Google Cloud Pub/Sub Topic name.") + private String topic = ""; + + /** + * An object of key-value pairs (These are used to categorize Cloud Resources like Cloud Pub/Sub Topics.) + */ + @Nullable + @JsonProperty("labels") + @JsonPropertyDescription("An object of key-value pairs (These are used to categorize Cloud Resources like Cloud Pub/Sub Topics.)") + private Map labels; + + /** + * Indicates the minimum duration to retain a message after it is published to the topic (Must be a valid Duration.) + */ + @Nullable + @JsonProperty("messageRetentionDuration") + @JsonPropertyDescription("Indicates the minimum duration to retain a message after it is published to the topic (Must be a valid https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.Duration.)") + private String messageRetentionDuration; + + /** + * Policy constraining the set of Google Cloud Platform regions where messages published to the topic may be stored + */ + @Nullable + @JsonProperty("messageStoragePolicy") + @JsonPropertyDescription("Policy constraining the set of Google Cloud Platform regions where messages published to the topic may be stored") + private GooglePubSubChannelMessageStoragePolicy messageStoragePolicy; + + /** + * Settings for validating messages published against a schema + */ + @NotNull + @Builder.Default + @javax.validation.constraints.NotNull + @JsonProperty(value = "schemaSettings", required = true) + @JsonPropertyDescription("Settings for validating messages published against a schema") + private GooglePubSubChannelSchemaSettings schemaSettings = new GooglePubSubChannelSchemaSettings(); + + /** + * The version of this binding. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelMessageStoragePolicy.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelMessageStoragePolicy.java new file mode 100644 index 00000000..2f236cc6 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelMessageStoragePolicy.java @@ -0,0 +1,36 @@ +package com.asyncapi.v3.binding.channel.googlepubsub; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * Describes Google Cloud Pub/Sub MessageStoragePolicy. + *

+ * The Message Storage Policy Object is used to describe the Google Cloud Pub/Sub MessageStoragePolicy Object with AsyncAPI. + * + * @version 0.1.0 + * @see Google Cloud Pub/Sub channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode +@JsonClassDescription("Describe the Google Cloud Pub/Sub MessageStoragePolicy") +public class GooglePubSubChannelMessageStoragePolicy { + + /** + * A list of IDs of GCP regions where messages that are published to the topic may be persisted in storage + */ + @Nullable + @JsonProperty("allowedPersistenceRegions") + @JsonPropertyDescription("A list of IDs of GCP regions where messages that are published to the topic may be persisted in storage") + private List allowedPersistenceRegions; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelSchemaSettings.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelSchemaSettings.java new file mode 100644 index 00000000..ce5f807e --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelSchemaSettings.java @@ -0,0 +1,59 @@ +package com.asyncapi.v3.binding.channel.googlepubsub; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Google Cloud Pub/Sub SchemaSettings. + *

+ * The Schema Settings Object is used to describe the Google Cloud Pub/Sub SchemaSettings Object with AsyncAPI. + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode +@JsonClassDescription("Describe the Google Cloud Pub/Sub SchemaSettings") +public class GooglePubSubChannelSchemaSettings { + + /** + * The encoding of the message (Must be one of the possible Encoding values.) + */ + @NotNull + @Builder.Default + @javax.validation.constraints.NotNull + @JsonProperty(value = "encoding", required = true) + @JsonPropertyDescription("The encoding of the message (Must be one of the possible https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.topics#encoding values.)") + private String encoding = ""; + + /** + * The minimum (inclusive) revision allowed for validating messages + */ + @Nullable + @JsonProperty("firstRevisionId") + @JsonPropertyDescription("The minimum (inclusive) revision allowed for validating messages") + private String firstRevisionId; + + /** + * The maximum (inclusive) revision allowed for validating messages + */ + @Nullable + @JsonProperty("lastRevisionId") + @JsonPropertyDescription("The maximum (inclusive) revision allowed for validating messages") + private String lastRevisionId; + + /** + * The name of the schema that messages published should be validated against (The format is projects/{project}/schemas/{schema}.) + */ + @NotNull + @Builder.Default + @javax.validation.constraints.NotNull + @JsonProperty(value = "name", required = true) + @JsonPropertyDescription("The name of the schema that messages published should be validated against (The format is projects/{project}/schemas/{schema}.)") + private String name = ""; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/http/HTTPChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/http/HTTPChannelBinding.java new file mode 100644 index 00000000..3419cdc2 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/http/HTTPChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.http; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes HTTP channel binding. + * + * @version 0.1.0 + * @see HTTP channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class HTTPChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelBinding.java new file mode 100644 index 00000000..bb637b2a --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelBinding.java @@ -0,0 +1,88 @@ +package com.asyncapi.v3.binding.channel.ibmmq; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes IBM MQ channel binding. + *

+ * This object contains information about the channel representation in IBM MQ. Each channel corresponds to a Queue or Topic within IBM MQ. + * + * @version 0.1.0 + * @see IBM MQ channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes IBM MQ channel binding.") +public class IBMMQChannelBinding extends ChannelBinding { + + /** + * Defines the type of AsyncAPI channel. + *

+ * MUST be either topic or queue. For type topic, the AsyncAPI channel name MUST be assumed for the IBM MQ topic string unless overridden. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "destinationType", defaultValue = "topic") + @JsonPropertyDescription("Defines the type of AsyncAPI channel.") + private IBMMQChannelDestinationType destinationType = IBMMQChannelDestinationType.TOPIC; + + /** + * REQUIRED if destinationType = queue + *

+ * queue and topic fields MUST NOT coexist within a channel binding + */ + @Nullable + @JsonProperty("queue") + @JsonPropertyDescription("Defines the properties of a queue.") + private IBMMQChannelQueueProperties queue; + + /** + * Defines the properties of a topic. + *

+ * OPTIONAL if destinationType = topic + *

+ * queue and topic fields MUST NOT coexist within a channel binding. + */ + @Nullable + @JsonProperty("topic") + @JsonPropertyDescription("Defines the properties of a topic.") + private IBMMQChannelTopicProperties topic; + + /** + * The maximum length of the physical message (in bytes) accepted by the Topic or Queue. Messages produced that are + * greater in size than this value may fail to be delivered. More information on the maximum message length can be + * found on this page in the IBM MQ Knowledge Center. + *

+ * MUST be 0-104,857,600 bytes (100 MB). + */ + @Nullable + @javax.validation.constraints.Min( + value = 0, + message = "Maximum length of the physical message (in bytes) must be greater or equals to 0" + ) + @javax.validation.constraints.Max( + value = 104857600, + message = "Maximum length of the physical message (in bytes) must be lower or equals to 104857600" + ) + @JsonProperty("maxMsgLength") + @JsonPropertyDescription("The maximum length of the physical message (in bytes) accepted by the Topic or Queue. Messages produced that are greater in size than this value may fail to be delivered. More information on the maximum message length can be found on this [page](https://www.ibm.com/support/knowledgecenter/SSFKSJ_latest/com.ibm.mq.ref.dev.doc/q097520_.html) in the IBM MQ Knowledge Center.") + private Integer maxMsgLength; + + /** + * The version of this binding. + */ + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelDestinationType.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelDestinationType.java new file mode 100644 index 00000000..13609498 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelDestinationType.java @@ -0,0 +1,20 @@ +package com.asyncapi.v3.binding.channel.ibmmq; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * Describes IBM MQ channel destination type. + * + * @version 0.1.0 + * @see IBM MQ channel binding + * @author Pavel Bodiachevskii + */ +public enum IBMMQChannelDestinationType { + + @JsonProperty("topic") + TOPIC, + + @JsonProperty("queue") + QUEUE + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelQueueProperties.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelQueueProperties.java new file mode 100644 index 00000000..4c4586ab --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelQueueProperties.java @@ -0,0 +1,62 @@ +package com.asyncapi.v3.binding.channel.ibmmq; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * Describes IBM MQ channel queue properties. + * + * @version 0.1.0 + * @see IBM MQ channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode +@JsonClassDescription("Describes IBM MQ channel queue properties.") +public class IBMMQChannelQueueProperties { + + /** + * Defines the name of the IBM MQ queue associated with the channel. + *

+ * A value MUST be specified. MUST NOT exceed 48 characters in length. MUST be a valid IBM MQ queue name + */ + @NotNull + @javax.validation.constraints.NotNull + @javax.validation.constraints.Size( + max = 48, + message = "Name of the IBM MQ queue must be less or equals to 48" + ) + @Builder.Default + @JsonProperty("objectName") + @JsonPropertyDescription("Defines the name of the IBM MQ queue associated with the channel.") + private String objectName = ""; + + /** + * Defines if the queue is a cluster queue and therefore partitioned. If true, a binding option MAY be specified + * when accessing the queue. More information on binding options can be found on this page in the IBM MQ Knowledge Center. + *

+ * If false, binding options SHOULD NOT be specified when accessing the queue. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "isPartitioned", defaultValue = "false") + @JsonPropertyDescription("Defines if the queue is a cluster queue and therefore partitioned. If 'true', a binding option MAY be specified when accessing the queue. More information on binding options can be found on this page in the IBM MQ Knowledge Center.") + private Boolean isPartitioned = false; + + /** + * Specifies if it is recommended to open the queue exclusively. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "exclusive", defaultValue = "false") + @JsonPropertyDescription("Specifies if it is recommended to open the queue exclusively.") + private Boolean exclusive = false; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelTopicProperties.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelTopicProperties.java new file mode 100644 index 00000000..7fe8544e --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelTopicProperties.java @@ -0,0 +1,74 @@ +package com.asyncapi.v3.binding.channel.ibmmq; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes IBM MQ channel topic properties. + * + * @version 0.1.0 + * @see IBM MQ channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode +public class IBMMQChannelTopicProperties { + + /** + * The value of the IBM MQ topic string to be used. + *

+ * OPTIONAL + * Note: if specified, SHALL override AsyncAPI channel name. + *

+ * MUST NOT exceed 10240 characters in length. MAY coexist with topic.objectName + */ + @Nullable + @javax.validation.constraints.Max( + value = 10240, + message = "Maximum length of topic string must be lower or equals to 10240" + ) + @JsonProperty("string") + @JsonPropertyDescription("The value of the IBM MQ topic string to be used.") + private String string; + + /** + * The name of the IBM MQ topic object. + *

+ * OPTIONAL + * Note: if specified, SHALL override AsyncAPI channel name. + *

+ * MUST NOT exceed 48 characters in length. MAY coexist with topic.string + */ + @Nullable + @javax.validation.constraints.Max( + value = 48, + message = "Maximum length of topic name must be lower or equals to 48" + ) + @JsonProperty("objectName") + @JsonPropertyDescription("The name of the IBM MQ topic object.") + private String objectName; + + /** + * Defines if the subscription may be durable. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "durablePermitted", defaultValue = "true") + @JsonPropertyDescription("Defines if the subscription may be durable.") + private Boolean durablePermitted = true; + + /** + * Defines if the last message published will be made available to new subscriptions. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "lastMsgRetained", defaultValue = "false") + @JsonPropertyDescription("Defines if the last message published will be made available to new subscriptions.") + private Boolean lastMsgRetained = false; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/jms/JMSChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/jms/JMSChannelBinding.java new file mode 100644 index 00000000..3d74dac6 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/jms/JMSChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.jms; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes JMS channel binding. + * + * @version 0.1.0 + * @see JMS channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class JMSChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelBinding.java new file mode 100644 index 00000000..66b61ea5 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelBinding.java @@ -0,0 +1,76 @@ +package com.asyncapi.v3.binding.channel.kafka; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Kafka channel binding. + * + * @version 0.4.0 + * @see Kafka channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes Kafka channel binding.") +public class KafkaChannelBinding extends ChannelBinding { + + /** + * Kafka topic name if different from channel name. + */ + @Nullable + @JsonProperty("topic") + @JsonPropertyDescription("Kafka topic name if different from channel name.") + private String topic; + + /** + * Number of partitions configured on this topic (useful to know how many parallel consumers you may run). + *

+ * MUST be positive. + */ + @Nullable + @javax.validation.constraints.Min( + value = 1, + message = "Number of partitions must be greater or equals to 1" + ) + @JsonProperty("partitions") + @JsonPropertyDescription("Number of partitions configured on this topic (useful to know how many parallel consumers you may run).") + private Integer partitions; + + /** + * Number of replicas configured on this topic. + *

+ * MUST be positive. + */ + @Nullable + @javax.validation.constraints.Min( + value = 1, + message = "Number of replicas must be greater or equals to 1" + ) + @JsonProperty("replicas") + @JsonPropertyDescription("Number of replicas configured on this topic.") + private Integer replicas; + + /** + * Topic configuration properties that are relevant for the API. + */ + @Nullable + @JsonProperty("topicConfiguration") + @JsonPropertyDescription("Topic configuration properties that are relevant for the API.") + private KafkaChannelTopicConfiguration topicConfiguration; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + private String bindingVersion = "0.4.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelTopicCleanupPolicy.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelTopicCleanupPolicy.java new file mode 100644 index 00000000..a58e764a --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelTopicCleanupPolicy.java @@ -0,0 +1,13 @@ +package com.asyncapi.v3.binding.channel.kafka; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public enum KafkaChannelTopicCleanupPolicy { + + @JsonProperty("compact") + COMPACT, + + @JsonProperty("delete") + DELETE + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelTopicConfiguration.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelTopicConfiguration.java new file mode 100644 index 00000000..63ed484c --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/kafka/KafkaChannelTopicConfiguration.java @@ -0,0 +1,83 @@ +package com.asyncapi.v3.binding.channel.kafka; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * This objects contains information about the API relevant topic configuration in Kafka. + * + * @version 0.4.0 + * @see Kafka channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class KafkaChannelTopicConfiguration { + + /** + * The cleanup.policy configuration option. + *

+ * array may only contain delete and/or compact + */ + @Nullable + @JsonProperty("cleanup.policy") + private List cleanupPolicy; + + /** + * The retention.ms configuration option. + */ + @Nullable + @javax.validation.constraints.Min( + value = -1, + message = "retention.ms must be greater or equals to -1" + ) + @JsonProperty("retention.ms") + @JsonPropertyDescription("The [`retention.ms`](https://kafka.apache.org/documentation/#topicconfigs_retention.ms) configuration option.") + private Integer retentionMs; + + /** + * The retention.bytes configuration option. + */ + @Nullable + @javax.validation.constraints.Min( + value = -1, + message = "retention.bytes must be greater or equals to -1" + ) + @JsonProperty("retention.bytes") + @JsonPropertyDescription("The [`retention.bytes`](https://kafka.apache.org/documentation/#topicconfigs_retention.bytes) configuration option.") + private Integer retentionBytes; + + /** + * The delete.retention.ms configuration option. + */ + @Nullable + @javax.validation.constraints.Min( + value = 0, + message = "delete.retention.ms must be greater or equals to 0" + ) + @JsonProperty("delete.retention.ms") + @JsonPropertyDescription("The [`delete.retention.ms`](https://kafka.apache.org/documentation/#topicconfigs_delete.retention.ms) configuration option.") + private Integer deleteRetentionMs; + + /** + * The max.message.bytes configuration option. + */ + @Nullable + @javax.validation.constraints.Min( + value = 0, + message = "max.message.bytes must be greater or equals to 0" + ) + @JsonProperty("max.message.bytes") + @JsonPropertyDescription("The [`max.message.bytes`](https://kafka.apache.org/documentation/#topicconfigs_max.message.bytes) configuration option.") + private Integer maxMessageBytes; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mercure/MercureChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mercure/MercureChannelBinding.java new file mode 100644 index 00000000..8cdb274b --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mercure/MercureChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.mercure; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Mercure channel binding. + * + * @version 0.1.0 + * @see Mercure channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MercureChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mqtt/MQTTChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mqtt/MQTTChannelBinding.java new file mode 100644 index 00000000..8f1ad80b --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mqtt/MQTTChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.mqtt; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes MQTT channel binding. + * + * @version 0.1.0 + * @see MQTT channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MQTTChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mqtt5/MQTT5ChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mqtt5/MQTT5ChannelBinding.java new file mode 100644 index 00000000..6386770b --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/mqtt5/MQTT5ChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.mqtt5; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes MQTT 5 channel binding. + * + * @version 0.2.0 + * @see MQTT 5 channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MQTT5ChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/nats/NATSChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/nats/NATSChannelBinding.java new file mode 100644 index 00000000..c069aabe --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/nats/NATSChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.nats; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes NATS channel binding. + * + * @version 0.1.0 + * @see NATS channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class NATSChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelBinding.java new file mode 100644 index 00000000..df114f94 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelBinding.java @@ -0,0 +1,101 @@ +package com.asyncapi.v3.binding.channel.pulsar; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * Describes Pulsar channel binding. + * + * @version 0.1.0 + * @see Pulsar channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes Pulsar channel binding.") +public class PulsarChannelBinding extends ChannelBinding { + + /** + * The namespace the channel is associated with. + */ + @NotNull + @Builder.Default + @javax.validation.constraints.NotNull + @JsonProperty("namespace") + @JsonPropertyDescription("The namespace the channel is associated with.") + private String namespace = ""; + + /** + * Persistence of the topic in Pulsar. It MUST be either persistent or non-persistent. + */ + @NotNull + @Builder.Default + @javax.validation.constraints.NotNull + @JsonProperty(value = "persistence", defaultValue = "persistent") + @JsonPropertyDescription("Persistence of the topic in Pulsar. It MUST be either persistent or non-persistent.") + private PulsarChannelPersistence persistence = PulsarChannelPersistence.PERSISTENT; + + /** + * Topic compaction threshold given in Megabytes. + */ + @Nullable + @javax.validation.constraints.Min( + value = 0, + message = "Topic compaction threshold must be greater or equals to 0." + ) + @JsonProperty("compaction") + @JsonPropertyDescription("Topic compaction threshold given in Megabytes.") + private Integer compaction; + + /** + * A list of clusters the topic is replicated to. + */ + @Nullable + @JsonProperty("geo-replication") + @JsonPropertyDescription("A list of clusters the topic is replicated to.") + private List geoReplication; + + /** + * Topic retention policy. + */ + @Nullable + @JsonProperty("retention") + @JsonPropertyDescription("Topic retention policy.") + private PulsarChannelRetentionDefinition retention; + + /** + * Message time-to-live in seconds. + */ + @Nullable + @JsonProperty("ttl") + @JsonPropertyDescription("Message time-to-live in seconds.") + private Integer ttl; + + /** + * Message deduplication. When true, it ensures that each message produced on Pulsar topics is persisted to disk only once. + */ + @Nullable + @JsonProperty("deduplication") + @JsonPropertyDescription("Message deduplication. When true, it ensures that each message produced on Pulsar topics is persisted to disk only once.") + private Boolean deduplication; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelPersistence.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelPersistence.java new file mode 100644 index 00000000..8af581a8 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelPersistence.java @@ -0,0 +1,22 @@ +package com.asyncapi.v3.binding.channel.pulsar; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * Describes Pulsar channel persistence. + * + * @version 0.1.0 + * @see Pulsar channel binding + * @author Pavel Bodiachevskii + */ +@JsonClassDescription("Describes Pulsar channel persistence.") +public enum PulsarChannelPersistence { + + @JsonProperty("persistent") + PERSISTENT, + + @JsonProperty("non-persistent") + NON_PERSISTENT + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelRetentionDefinition.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelRetentionDefinition.java new file mode 100644 index 00000000..badd4b15 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelRetentionDefinition.java @@ -0,0 +1,44 @@ +package com.asyncapi.v3.binding.channel.pulsar; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Pulsar channel retention definition. + *

+ * The Retention Definition Object is used to describe the Pulsar Retention policy. + * + * @version 0.1.0 + * @see Pulsar channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode +@JsonClassDescription("Describes Pulsar channel retention definition.") +public class PulsarChannelRetentionDefinition { + + /** + * Time given in Minutes. + */ + @Nullable + @Builder.Default + @JsonProperty("time") + @JsonPropertyDescription("Time given in Minutes.") + private Integer time = 0; + + /** + * Size given in MegaBytes. + */ + @Nullable + @Builder.Default + @JsonProperty("size") + @JsonPropertyDescription("Size given in MegaBytes.") + private Integer size = 0; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/redis/RedisChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/redis/RedisChannelBinding.java new file mode 100644 index 00000000..a061a679 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/redis/RedisChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.redis; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Redis channel binding. + * + * @version 0.1.0 + * @see Redis channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class RedisChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/sns/SNSChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/sns/SNSChannelBinding.java new file mode 100644 index 00000000..f2e8b833 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/sns/SNSChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.sns; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes SNS channel binding. + * + * @version 0.1.0 + * @see SNS channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class SNSChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/solace/SolaceChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/solace/SolaceChannelBinding.java new file mode 100644 index 00000000..cbd31a55 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/solace/SolaceChannelBinding.java @@ -0,0 +1,23 @@ +package com.asyncapi.v3.binding.channel.solace; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Solace channel binding. + * + * @version 0.3.0 + * @see Solace channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class SolaceChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/sqs/SQSChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/sqs/SQSChannelBinding.java new file mode 100644 index 00000000..961a8ad6 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/sqs/SQSChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.sqs; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes SQS channel binding. + * + * @version 0.1.0 + * @see SQS channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class SQSChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/stomp/STOMPChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/stomp/STOMPChannelBinding.java new file mode 100644 index 00000000..f4b13a98 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/stomp/STOMPChannelBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.channel.stomp; + +import com.asyncapi.v3.binding.channel.ChannelBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes STOMP channel binding. + * + * @version 0.1.0 + * @see STOMP channel binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class STOMPChannelBinding extends ChannelBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelBinding.java new file mode 100644 index 00000000..d1255317 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelBinding.java @@ -0,0 +1,66 @@ +package com.asyncapi.v3.binding.channel.ws; + +import com.asyncapi.v3.schema.Schema; +import com.asyncapi.v3.binding.channel.ChannelBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes WebSockets channel binding. + *

+ * When using WebSockets, the channel represents the connection. Unlike other protocols that support multiple virtual + * channels (topics, routing keys, etc.) per connection, WebSockets doesn't support virtual channels or, put it another + * way, there's only one channel and its characteristics are strongly related to the protocol used for the handshake, + * i.e., HTTP. + * + * @version 0.1.0 + * @see WebSockets channel binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes WebSockets channel binding.") +public class WebSocketsChannelBinding extends ChannelBinding { + + /** + * The HTTP method to use when establishing the connection. Its value MUST be either GET or POST. + */ + @Nullable + @JsonProperty("method") + @JsonPropertyDescription("The HTTP method to use when establishing the connection. Its value MUST be either GET or POST.") + private WebSocketsChannelMethod method; + + /** + * A Schema object containing the definitions for each query parameter. This schema MUST be of type + * object and have a properties key. + */ + @Nullable + @JsonProperty("query") + @JsonPropertyDescription("A Schema object containing the definitions for each query parameter. This schema MUST be of type object and have a properties key.") + private Schema query; + + /** + * A Schema object containing the definitions of the HTTP headers to use when establishing the connection. + * This schema MUST be of type object and have a properties key. + */ + @Nullable + @JsonProperty("headers") + @JsonPropertyDescription("A Schema object containing the definitions of the HTTP headers to use when establishing the connection. This schema MUST be of type object and have a properties key.") + private Schema headers; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelMethod.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelMethod.java new file mode 100644 index 00000000..48362411 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelMethod.java @@ -0,0 +1,13 @@ +package com.asyncapi.v3.binding.channel.ws; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public enum WebSocketsChannelMethod { + + @JsonProperty("GET") + GET, + + @JsonProperty("POST") + POST + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/amqp/AMQPChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/amqp/AMQPChannelBindingTest.kt new file mode 100644 index 00000000..f45456ca --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/amqp/AMQPChannelBindingTest.kt @@ -0,0 +1,42 @@ +package com.asyncapi.v3.binding.channel.amqp + +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3.binding.channel.amqp.exchange.AMQPChannelExchangeProperties +import com.asyncapi.v3.binding.channel.amqp.exchange.AMQPChannelExchangeType +import com.asyncapi.v3.binding.channel.amqp.queue.AMQPChannelQueueProperties + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class AMQPChannelBindingTest: SerDeTest() { + + override fun objectClass() = AMQPChannelBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/channel/amqp/amqpChannelBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/channel/amqp/amqpChannelBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/channel/amqp/amqpChannelBinding - wrongly extended.json" + + override fun build(): AMQPChannelBinding { + return AMQPChannelBinding.builder() + .`is`(AMQPChannelType.ROUTING_KEY) + .queue(AMQPChannelQueueProperties.builder() + .name("my-queue-name") + .durable(true) + .exclusive(true) + .autoDelete(false) + .build() + ) + .exchange(AMQPChannelExchangeProperties.builder() + .name("myExchange") + .type(AMQPChannelExchangeType.TOPIC) + .durable(true) + .autoDelete(false) + .build() + ) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelBindingTest.kt new file mode 100644 index 00000000..a345ee89 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/anypointmq/AnypointMQChannelBindingTest.kt @@ -0,0 +1,26 @@ +package com.asyncapi.v3.binding.channel.anypointmq + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class AnypointMQChannelBindingTest: SerDeTest() { + + override fun objectClass() = AnypointMQChannelBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/channel/anypoint/anypointMQChannelBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/channel/anypoint/anypointMQChannelBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json" + + override fun build(): AnypointMQChannelBinding { + return AnypointMQChannelBinding.builder() + .destination("user-signup-exchg") + .destinationType(AnypointMQChannelDestinationType.EXCHANGE) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelBindingTest.kt new file mode 100644 index 00000000..e4e85536 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/googlepubsub/GooglePubSubChannelBindingTest.kt @@ -0,0 +1,42 @@ +package com.asyncapi.v3.binding.channel.googlepubsub + +import com.asyncapi.v3.SerDeTest + +class GooglePubSubChannelBindingTest: SerDeTest() { + + override fun objectClass() = GooglePubSubChannelBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json" + + override fun build(): GooglePubSubChannelBinding { + return GooglePubSubChannelBinding.builder() + .topic("projects/your-project/topics/topic-proto-schema") + .messageRetentionDuration("86400s") + .messageStoragePolicy(GooglePubSubChannelMessageStoragePolicy( + listOf( + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ) + )) + .schemaSettings(GooglePubSubChannelSchemaSettings.builder() + .encoding("binary") + .name("projects/your-project/schemas/message-proto") + .build() + ) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelBindingTest.kt new file mode 100644 index 00000000..44b62126 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/ibmmq/IBMMQChannelBindingTest.kt @@ -0,0 +1,35 @@ +package com.asyncapi.v3.binding.channel.ibmmq + +import com.asyncapi.v3.SerDeTest + +class IBMMQChannelBindingTest: SerDeTest() { + + override fun objectClass() = IBMMQChannelBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/channel/ibmmq/ibmMQChannelBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/channel/ibmmq/ibmMQChannelBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json" + + override fun build(): IBMMQChannelBinding { + return IBMMQChannelBinding.builder() + .destinationType(IBMMQChannelDestinationType.TOPIC) + .queue(IBMMQChannelQueueProperties.builder() + .objectName("message") + .isPartitioned(false) + .exclusive(true) + .build() + ) + .topic(IBMMQChannelTopicProperties.builder() + .string("messages") + .objectName("message") + .durablePermitted(true) + .lastMsgRetained(true) + .build() + ) + .maxMsgLength(1024) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/kafka/KafkaChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/kafka/KafkaChannelBindingTest.kt new file mode 100644 index 00000000..6b53ef17 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/kafka/KafkaChannelBindingTest.kt @@ -0,0 +1,38 @@ +package com.asyncapi.v3.binding.channel.kafka + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class KafkaChannelBindingTest: SerDeTest() { + + override fun objectClass() = KafkaChannelBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/channel/kafka/kafkaChannelBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/channel/kafka/kafkaChannelBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json" + + override fun build(): KafkaChannelBinding { + return KafkaChannelBinding.builder() + .topic("my-specific-topic-name") + .partitions(20) + .replicas(3) + .topicConfiguration(KafkaChannelTopicConfiguration.builder() + .cleanupPolicy(listOf( + KafkaChannelTopicCleanupPolicy.DELETE, + KafkaChannelTopicCleanupPolicy.COMPACT + )) + .retentionMs(604_800_000) + .retentionBytes(1_000_000_000) + .deleteRetentionMs(86_400_000) + .maxMessageBytes(1_048_588) + .build() + ) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelBindingTest.kt new file mode 100644 index 00000000..2c2d6da8 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/pulsar/PulsarChannelBindingTest.kt @@ -0,0 +1,31 @@ +package com.asyncapi.v3.binding.channel.pulsar + +import com.asyncapi.v3.SerDeTest + +class PulsarChannelBindingTest: SerDeTest() { + + override fun objectClass() = PulsarChannelBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/channel/pulsar/pulsarChannelBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/channel/pulsar/pulsarChannelBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json" + + override fun build(): PulsarChannelBinding { + return PulsarChannelBinding.builder() + .namespace("staging") + .persistence(PulsarChannelPersistence.PERSISTENT) + .compaction(1000) + .geoReplication(listOf("us-east1", "us-west1")) + .retention(PulsarChannelRetentionDefinition.builder() + .time(7) + .size(1000) + .build() + ) + .ttl(360) + .deduplication(false) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelBindingTest.kt new file mode 100644 index 00000000..8182aec6 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/channel/ws/WebSocketsChannelBindingTest.kt @@ -0,0 +1,53 @@ +package com.asyncapi.v3.binding.channel.ws + +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3.schema.Schema +import com.asyncapi.v3.schema.Type + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class WebSocketsChannelBindingTest: SerDeTest() { + + override fun objectClass() = WebSocketsChannelBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/channel/ws/webSocketsChannelBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/channel/ws/webSocketsChannelBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json" + + override fun build(): WebSocketsChannelBinding { + return WebSocketsChannelBinding.builder() + .method(WebSocketsChannelMethod.GET) + .query(Schema.builder() + .type(Type.OBJECT) + .properties(mapOf( + Pair( + "ref", + Schema.builder() + .type(Type.STRING) + .description("Referral.") + .build() + ) + )) + .build() + ) + .headers(Schema.builder() + .type(Type.OBJECT) + .properties(mapOf( + Pair( + "Authentication", + Schema.builder() + .type(Type.STRING) + .description("Authentication token") + .build() + ) + )) + .build() + ) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding - extended.json new file mode 100644 index 00000000..61ef0ad3 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding - extended.json @@ -0,0 +1,23 @@ +{ + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding - wrongly extended.json new file mode 100644 index 00000000..a6433eb4 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding - wrongly extended.json @@ -0,0 +1,24 @@ +{ + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding.json new file mode 100644 index 00000000..e91cacb2 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/amqp/amqpChannelBinding.json @@ -0,0 +1,18 @@ +{ + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding - extended.json new file mode 100644 index 00000000..4a27096c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding - extended.json @@ -0,0 +1,10 @@ +{ + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json new file mode 100644 index 00000000..2b92a333 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json @@ -0,0 +1,11 @@ +{ + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding.json new file mode 100644 index 00000000..c5d7598b --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/anypoint/anypointMQChannelBinding.json @@ -0,0 +1,5 @@ +{ + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json new file mode 100644 index 00000000..560f8293 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json @@ -0,0 +1,20 @@ +{ + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json new file mode 100644 index 00000000..374dbd31 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json @@ -0,0 +1,30 @@ +{ + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding.json new file mode 100644 index 00000000..fb9b3d3e --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding.json @@ -0,0 +1,24 @@ +{ + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding - extended.json new file mode 100644 index 00000000..a0f4e987 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding - extended.json @@ -0,0 +1,21 @@ +{ + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json new file mode 100644 index 00000000..deff6b3f --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json @@ -0,0 +1,22 @@ +{ + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding.json new file mode 100644 index 00000000..7ebdae40 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/ibmmq/ibmMQChannelBinding.json @@ -0,0 +1,16 @@ +{ + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding - extended.json new file mode 100644 index 00000000..1b79a719 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding - extended.json @@ -0,0 +1,18 @@ +{ + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json new file mode 100644 index 00000000..8373d9c4 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json @@ -0,0 +1,22 @@ +{ + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding.json new file mode 100644 index 00000000..c937ae56 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/kafka/kafkaChannelBinding.json @@ -0,0 +1,16 @@ +{ + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding - extended.json new file mode 100644 index 00000000..17b32f84 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding - extended.json @@ -0,0 +1,18 @@ +{ + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json new file mode 100644 index 00000000..eb0e8d65 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json @@ -0,0 +1,22 @@ +{ + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding.json new file mode 100644 index 00000000..21af1c35 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/pulsar/pulsarChannelBinding.json @@ -0,0 +1,16 @@ +{ + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - extended.json new file mode 100644 index 00000000..022ca87a --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - extended.json @@ -0,0 +1,199 @@ +{ + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json new file mode 100644 index 00000000..535cd4bc --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json @@ -0,0 +1,27 @@ +{ + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding.json new file mode 100644 index 00000000..f30d9581 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding.json @@ -0,0 +1,21 @@ +{ + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } +} \ No newline at end of file From 977d04ea10ec62e8e4edaa25457857e9e7b83d3a Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Tue, 3 Oct 2023 00:45:20 +0400 Subject: [PATCH 41/54] feat(3.0.0): Channel --- .../ChannelParametersDeserializer.java | 25 + .../channel/message/MessagesDeserializer.java | 25 + .../com/asyncapi/v3/_0_0/model/AsyncAPI.java | 6 +- .../v3/_0_0/model/channel/Channel.java | 147 + .../v3/_0_0/model/channel/ChannelItem.java | 4 - .../channel/ChannelBindingsDeserializer.java | 68 + .../v3/_0_0/model/channel/ChannelTest.kt | 155 + .../model/channel/channel - extended.json | 5387 +++++++++++++++++ .../channel/channel - wrongly extended.json | 2012 ++++++ .../channel with reference - extended.json | 5386 ++++++++++++++++ ...nel with reference - wrongly extended.json | 2011 ++++++ .../model/channel/channel with reference.json | 2005 ++++++ .../json/v3/3.0.0/model/channel/channel.json | 2006 ++++++ 13 files changed, 19230 insertions(+), 7 deletions(-) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/ChannelParametersDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessagesDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/Channel.java delete mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/ChannelItem.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/channel/ChannelBindingsDeserializer.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/ChannelTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/ChannelParametersDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/ChannelParametersDeserializer.java new file mode 100644 index 00000000..88e86b94 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/ChannelParametersDeserializer.java @@ -0,0 +1,25 @@ +package com.asyncapi.v3._0_0.jackson.model.channel; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.channel.Parameter; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +/** + * Serializes {@link com.asyncapi.v3._0_0.model.channel.Parameter} variables map. + * + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +public class ChannelParametersDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Parameter.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessagesDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessagesDeserializer.java new file mode 100644 index 00000000..8438ddc2 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/message/MessagesDeserializer.java @@ -0,0 +1,25 @@ +package com.asyncapi.v3._0_0.jackson.model.channel.message; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.channel.message.Message; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +/** + * Serializes {@link Message} variables map. + * + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +public class MessagesDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Message.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java index a2aabafe..b65617bd 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java @@ -1,7 +1,7 @@ package com.asyncapi.v3._0_0.model; import com.asyncapi.v3.ExtendableObject; -import com.asyncapi.v3._0_0.model.channel.ChannelItem; +import com.asyncapi.v3._0_0.model.channel.Channel; import com.asyncapi.v3._0_0.model.component.Components; import com.asyncapi.v3._0_0.model.info.Info; import com.asyncapi.v3._0_0.model.server.Server; @@ -89,14 +89,14 @@ public class AsyncAPI extends ExtendableObject { */ @Nullable @Builder.Default - private Map channels = new HashMap<>(); + private Map channels = new HashMap<>(); /** * The available operations for the API. */ @Nullable @Builder.Default - private Map operations = new HashMap<>(); + private Map operations = new HashMap<>(); /** * An element to hold various schemas for the specification. diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/Channel.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/Channel.java new file mode 100644 index 00000000..91d91de9 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/Channel.java @@ -0,0 +1,147 @@ +package com.asyncapi.v3._0_0.model.channel; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.jackson.model.ExternalDocumentationDeserializer; +import com.asyncapi.v3._0_0.jackson.model.TagsDeserializer; +import com.asyncapi.v3._0_0.jackson.model.channel.message.MessagesDeserializer; +import com.asyncapi.v3._0_0.jackson.model.channel.ChannelParametersDeserializer; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.asyncapi.v3._0_0.model.Tag; +import com.asyncapi.v3._0_0.model.channel.message.Message; +import com.asyncapi.v3.binding.channel.ChannelBinding; +import com.asyncapi.v3.jackson.binding.channel.ChannelBindingsDeserializer; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.List; +import java.util.Map; + +/** + * Describes a shared communication channel. + * + * @version 3.0.0 + * @see ChannelItem + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class Channel extends ExtendableObject { + + /** + * An optional string representation of this channel's address. The address is typically the "topic name", + * "routing key", "event type", or "path". When null or absent, it MUST be interpreted as unknown. + * This is useful when the address is generated dynamically at runtime or can't be known upfront. + *

+ * It MAY contain Channel Address Expressions. + */ + @Nullable + private String address; + + /** + * A human-friendly title for the channel. + */ + @Nullable + private String title; + + /** + * A short summary of the channel. + */ + @Nullable + private String summary; + + /** + * An optional description of this channel. + *

+ * CommonMark syntax can be used for rich text representation. + */ + @Nullable + private String description; + + /** + * An array of $ref pointers to the definition of the servers in which this channel is available. + *

+ * If servers is absent or empty, this channel MUST be available on all the servers defined in the Servers Object. + * Please note the servers property value MUST be an array of Reference Objects and, therefore, + * MUST NOT contain an array of Server Objects. + *

+ * However, it is RECOMMENDED that parsers (or other software) dereference this property + * for a better development experience. + */ + @Nullable + private List servers; + + /** + * A map of the parameters included in the channel address. + *

+ * It MUST be present only when the address contains Channel Address Expressions. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link Parameter}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = ChannelParametersDeserializer.class) + private Map parameters; + + /** + * A map of the messages that will be sent to this channel by any application at any time. + * Every message sent to this channel MUST be valid against one, and only one, of the message + * objects defined in this map. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link Message}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = MessagesDeserializer.class) + private Map messages; + + /** + * A map where the keys describe the name of the protocol and the values describe protocol-specific definitions for the channel. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link ChannelBinding}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = ChannelBindingsDeserializer.class) + private Map bindings; + + /** + * A list of tags for logical grouping of channels. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link Tag}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = TagsDeserializer.class) + private List tags; + + /** + * Additional external documentation for this channel. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link ExternalDocumentation}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = ExternalDocumentationDeserializer.class) + private Object externalDocs; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/ChannelItem.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/ChannelItem.java deleted file mode 100644 index ba1177d0..00000000 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/channel/ChannelItem.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.asyncapi.v3._0_0.model.channel; - -public class ChannelItem { -} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/channel/ChannelBindingsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/channel/ChannelBindingsDeserializer.java new file mode 100644 index 00000000..38ffac56 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/channel/ChannelBindingsDeserializer.java @@ -0,0 +1,68 @@ +package com.asyncapi.v3.jackson.binding.channel; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3.binding.channel.amqp.AMQPChannelBinding; +import com.asyncapi.v3.binding.channel.amqp1.AMQP1ChannelBinding; +import com.asyncapi.v3.binding.channel.anypointmq.AnypointMQChannelBinding; +import com.asyncapi.v3.binding.channel.googlepubsub.GooglePubSubChannelBinding; +import com.asyncapi.v3.binding.channel.http.HTTPChannelBinding; +import com.asyncapi.v3.binding.channel.ibmmq.IBMMQChannelBinding; +import com.asyncapi.v3.binding.channel.jms.JMSChannelBinding; +import com.asyncapi.v3.binding.channel.kafka.KafkaChannelBinding; +import com.asyncapi.v3.binding.channel.mercure.MercureChannelBinding; +import com.asyncapi.v3.binding.channel.mqtt.MQTTChannelBinding; +import com.asyncapi.v3.binding.channel.mqtt5.MQTT5ChannelBinding; +import com.asyncapi.v3.binding.channel.nats.NATSChannelBinding; +import com.asyncapi.v3.binding.channel.pulsar.PulsarChannelBinding; +import com.asyncapi.v3.binding.channel.redis.RedisChannelBinding; +import com.asyncapi.v3.binding.channel.sns.SNSChannelBinding; +import com.asyncapi.v3.binding.channel.solace.SolaceChannelBinding; +import com.asyncapi.v3.binding.channel.sqs.SQSChannelBinding; +import com.asyncapi.v3.binding.channel.stomp.STOMPChannelBinding; +import com.asyncapi.v3.binding.channel.ws.WebSocketsChannelBinding; +import com.asyncapi.v3.jackson.BindingsMapDeserializer; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.JsonNode; + +import java.io.IOException; + +/** + * Serializes channel bindings map. + * + * @author Pavel Bodiachevskii + */ +public class ChannelBindingsDeserializer extends BindingsMapDeserializer { + + public Object chooseKnownPojo(String bindingKey, JsonNode binding, ObjectCodec objectCodec) throws IOException { + try (JsonParser jsonParser = binding.traverse(objectCodec)) { + if (binding.get("$ref" ) != null) { + return jsonParser.readValueAs(Reference.class); + } + + switch (bindingKey) { + case "amqp": return jsonParser.readValueAs(AMQPChannelBinding.class); + case "amqp1": return jsonParser.readValueAs(AMQP1ChannelBinding.class); + case "anypointmq": return jsonParser.readValueAs(AnypointMQChannelBinding.class); + case "googlepubsub": return jsonParser.readValueAs(GooglePubSubChannelBinding.class); + case "http": return jsonParser.readValueAs(HTTPChannelBinding.class); + case "ibmmq": return jsonParser.readValueAs(IBMMQChannelBinding.class); + case "jms": return jsonParser.readValueAs(JMSChannelBinding.class); + case "kafka": return jsonParser.readValueAs(KafkaChannelBinding.class); + case "mercure": return jsonParser.readValueAs(MercureChannelBinding.class); + case "mqtt": return jsonParser.readValueAs(MQTTChannelBinding.class); + case "mqtt5": return jsonParser.readValueAs(MQTT5ChannelBinding.class); + case "nats": return jsonParser.readValueAs(NATSChannelBinding.class); + case "pulsar": return jsonParser.readValueAs(PulsarChannelBinding.class); + case "redis": return jsonParser.readValueAs(RedisChannelBinding.class); + case "sns": return jsonParser.readValueAs(SNSChannelBinding.class); + case "solace": return jsonParser.readValueAs(SolaceChannelBinding.class); + case "sqs": return jsonParser.readValueAs(SQSChannelBinding.class); + case "stomp": return jsonParser.readValueAs(STOMPChannelBinding.class); + case "ws": return jsonParser.readValueAs(WebSocketsChannelBinding.class); + default: return null; + } + } + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/ChannelTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/ChannelTest.kt new file mode 100644 index 00000000..e48f456b --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/ChannelTest.kt @@ -0,0 +1,155 @@ +package com.asyncapi.v3._0_0.model.channel + +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3._0_0.model.ExternalDocumentationTest +import com.asyncapi.v3._0_0.model.TagTest +import com.asyncapi.v3._0_0.model.TagTestWithReferenceToExternalDocs +import com.asyncapi.v3._0_0.model.channel.message.MessageTestWithMultiFormatSchema +import com.asyncapi.v3._0_0.model.channel.message.MessageTestWithReference +import com.asyncapi.v3._0_0.model.channel.message.MessageTestWithSchema +import com.asyncapi.v3.binding.channel.amqp.AMQPChannelBindingTest +import com.asyncapi.v3.binding.channel.anypointmq.AnypointMQChannelBindingTest +import com.asyncapi.v3.binding.channel.googlepubsub.GooglePubSubChannelBindingTest +import com.asyncapi.v3.binding.channel.ibmmq.IBMMQChannelBindingTest +import com.asyncapi.v3.binding.channel.kafka.KafkaChannelBindingTest +import com.asyncapi.v3.binding.channel.pulsar.PulsarChannelBindingTest +import com.asyncapi.v3.binding.channel.ws.WebSocketsChannelBindingTest + +class ChannelTest: SerDeTest() { + + override fun objectClass() = Channel::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/channel.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/channel - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/channel - wrongly extended.json" + + override fun build(): Channel { + return Channel.builder() + .address("users.{userId}") + .title("Users channel") + .summary("messages about user events.") + .description("This channel is used to exchange messages about users signing up") + .servers(listOf( + Reference("#/components/servers/1"), + Reference("#/components/servers/2"), + Reference("#/components/servers/3") + )) + .parameters(mapOf( + Pair("userId", ParameterTest().build()), + Pair("userStatus", Reference("#/components/parameters/user-status")) + )) + .messages(mapOf( + Pair("changeStatus", Reference("#/components/parameters/user-status")), + Pair("message", MessageTestWithSchema().build()), + Pair("message 2", MessageTestWithMultiFormatSchema().build()), + Pair("message with reference", MessageTestWithReference().build()), + )) + .bindings(bindings()) + .tags(listOf( + TagTest().build(), + TagTestWithReferenceToExternalDocs().build(), + Reference("#/components/tag") + )) + .externalDocs(ExternalDocumentationTest().build()) + .build() + } + + companion object { + fun bindings(): Map { + return mapOf( + Pair("amqp", AMQPChannelBindingTest().build()), + Pair("amqp1", Reference("#/components/channelBindings/amqp1")), + Pair("anypointmq", AnypointMQChannelBindingTest().build()), + Pair("googlepubsub", GooglePubSubChannelBindingTest().build()), + Pair("http", Reference("#/components/channelBindings/http")), + Pair("ibmmq", IBMMQChannelBindingTest().build()), + Pair("jms", Reference("#/components/channelBindings/jms")), + Pair("kafka", KafkaChannelBindingTest().build()), + Pair("mercure", Reference("#/components/channelBindings/mercure")), + Pair("mqtt", Reference("#/components/channelBindings/mqtt")), + Pair("mqtt5", Reference("#/components/channelBindings/mqtt5")), + Pair("nats", Reference("#/components/channelBindings/nats")), + Pair("pulsar", PulsarChannelBindingTest().build()), + Pair("redis", Reference("#/components/channelBindings/redis")), + Pair("sns", Reference("#/components/channelBindings/sns")), + Pair("solace", Reference("#/components/channelBindings/solace")), + Pair("sqs", Reference("#/components/channelBindings/sqs")), + Pair("stomp", Reference("#/components/channelBindings/stomp")), + Pair("ws", WebSocketsChannelBindingTest().build()) + ) + } + } + +} + +class ChannelTestWithReference: SerDeTest() { + + override fun objectClass() = Channel::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/channel/channel with reference.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/channel/channel with reference - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/channel/channel with reference - wrongly extended.json" + + override fun build(): Channel { + return Channel.builder() + .address("users.{userId}") + .title("Users channel") + .summary("messages about user events.") + .description("This channel is used to exchange messages about users signing up") + .servers(listOf( + Reference("#/components/servers/1"), + Reference("#/components/servers/2"), + Reference("#/components/servers/3") + )) + .parameters(mapOf( + Pair("userId", ParameterTest().build()), + Pair("userStatus", Reference("#/components/parameters/user-status")) + )) + .messages(mapOf( + Pair("changeStatus", Reference("#/components/parameters/user-status")), + Pair("message", MessageTestWithSchema().build()), + Pair("message 2", MessageTestWithMultiFormatSchema().build()), + Pair("message with reference", MessageTestWithReference().build()), + )) + .bindings(bindings()) + .tags(listOf( + TagTest().build(), + TagTestWithReferenceToExternalDocs().build(), + Reference("#/components/tag") + )) + .externalDocs(Reference("#/components/external-doc")) + .build() + } + + companion object { + fun bindings(): Map { + return mapOf( + Pair("amqp", AMQPChannelBindingTest().build()), + Pair("amqp1", Reference("#/components/channelBindings/amqp1")), + Pair("anypointmq", AnypointMQChannelBindingTest().build()), + Pair("googlepubsub", GooglePubSubChannelBindingTest().build()), + Pair("http", Reference("#/components/channelBindings/http")), + Pair("ibmmq", IBMMQChannelBindingTest().build()), + Pair("jms", Reference("#/components/channelBindings/jms")), + Pair("kafka", KafkaChannelBindingTest().build()), + Pair("mercure", Reference("#/components/channelBindings/mercure")), + Pair("mqtt", Reference("#/components/channelBindings/mqtt")), + Pair("mqtt5", Reference("#/components/channelBindings/mqtt5")), + Pair("nats", Reference("#/components/channelBindings/nats")), + Pair("pulsar", PulsarChannelBindingTest().build()), + Pair("redis", Reference("#/components/channelBindings/redis")), + Pair("sns", Reference("#/components/channelBindings/sns")), + Pair("solace", Reference("#/components/channelBindings/solace")), + Pair("sqs", Reference("#/components/channelBindings/sqs")), + Pair("stomp", Reference("#/components/channelBindings/stomp")), + Pair("ws", WebSocketsChannelBindingTest().build()) + ) + } + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - extended.json new file mode 100644 index 00000000..8e6e9957 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - extended.json @@ -0,0 +1,5387 @@ +{ + "address" : "users.{userId}", + "title" : "Users channel", + "summary" : "messages about user events.", + "description" : "This channel is used to exchange messages about users signing up", + "servers" : [ { + "$ref" : "#/components/servers/1" + }, { + "$ref" : "#/components/servers/2" + }, { + "$ref" : "#/components/servers/3" + } ], + "parameters" : { + "userId" : { + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ] + }, + "userStatus" : { + "$ref" : "#/components/parameters/user-status" + } + }, + "messages" : { + "changeStatus" : { + "$ref" : "#/components/parameters/user-status" + }, + "message" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "message 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message with reference" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } + }, + "bindings" : { + "amqp" : { + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/channelBindings/amqp1" + }, + "anypointmq" : { + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "$ref" : "#/components/channelBindings/http" + }, + "ibmmq" : { + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/channelBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + } + }, + "mercure" : { + "$ref" : "#/components/channelBindings/mercure" + }, + "mqtt" : { + "$ref" : "#/components/channelBindings/mqtt" + }, + "mqtt5" : { + "$ref" : "#/components/channelBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/channelBindings/nats" + }, + "pulsar" : { + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0" + }, + "redis" : { + "$ref" : "#/components/channelBindings/redis" + }, + "sns" : { + "$ref" : "#/components/channelBindings/sns" + }, + "solace" : { + "$ref" : "#/components/channelBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/channelBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/channelBindings/stomp" + }, + "ws" : { + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + } + }, + "tags" : [ { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, { + "$ref" : "#/components/tag" + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - wrongly extended.json new file mode 100644 index 00000000..97175680 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - wrongly extended.json @@ -0,0 +1,2012 @@ +{ + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - extended.json new file mode 100644 index 00000000..c41a9270 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - extended.json @@ -0,0 +1,5386 @@ +{ + "address" : "users.{userId}", + "title" : "Users channel", + "summary" : "messages about user events.", + "description" : "This channel is used to exchange messages about users signing up", + "servers" : [ { + "$ref" : "#/components/servers/1" + }, { + "$ref" : "#/components/servers/2" + }, { + "$ref" : "#/components/servers/3" + } ], + "parameters" : { + "userId" : { + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ] + }, + "userStatus" : { + "$ref" : "#/components/parameters/user-status" + } + }, + "messages" : { + "changeStatus" : { + "$ref" : "#/components/parameters/user-status" + }, + "message" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "message 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message with reference" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } + }, + "bindings" : { + "amqp" : { + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/channelBindings/amqp1" + }, + "anypointmq" : { + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "$ref" : "#/components/channelBindings/http" + }, + "ibmmq" : { + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/channelBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + } + }, + "mercure" : { + "$ref" : "#/components/channelBindings/mercure" + }, + "mqtt" : { + "$ref" : "#/components/channelBindings/mqtt" + }, + "mqtt5" : { + "$ref" : "#/components/channelBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/channelBindings/nats" + }, + "pulsar" : { + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0" + }, + "redis" : { + "$ref" : "#/components/channelBindings/redis" + }, + "sns" : { + "$ref" : "#/components/channelBindings/sns" + }, + "solace" : { + "$ref" : "#/components/channelBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/channelBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/channelBindings/stomp" + }, + "ws" : { + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + } + }, + "tags" : [ { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, { + "$ref" : "#/components/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - wrongly extended.json new file mode 100644 index 00000000..9efbe3a8 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - wrongly extended.json @@ -0,0 +1,2011 @@ +{ + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs": { + "$ref": "#/components/external-doc" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference.json new file mode 100644 index 00000000..d60772f8 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference.json @@ -0,0 +1,2005 @@ +{ + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel.json new file mode 100644 index 00000000..35db9993 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel.json @@ -0,0 +1,2006 @@ +{ + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } +} \ No newline at end of file From 879341c3aed715c5a746fa12ddfbb891108f910a Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Tue, 3 Oct 2023 02:01:20 +0400 Subject: [PATCH 42/54] feat(3.0.0): OperationBinding --- .../binding/operation/OperationBinding.java | 13 ++ .../operation/amqp/AMQPOperationBinding.java | 150 ++++++++++++++++++ .../amqp1/AMQP1OperationBinding.java | 21 +++ .../AnypointMQOperationBinding.java | 21 +++ .../GooglePubSubOperationBinding.java | 21 +++ .../operation/http/HTTPOperationBinding.java | 66 ++++++++ .../operation/http/HTTPOperationMethod.java | 22 +++ .../operation/http/HTTPOperationType.java | 13 ++ .../ibmmq/IBMMQOperationBinding.java | 23 +++ .../operation/jms/JMSOperationBinding.java | 21 +++ .../kafka/KafkaOperationBinding.java | 49 ++++++ .../mercure/MercureOperationBinding.java | 21 +++ .../operation/mqtt/MQTTOperationBinding.java | 67 ++++++++ .../mqtt5/MQTT5OperationBinding.java | 21 +++ .../operation/nats/NATSOperationBinding.java | 46 ++++++ .../pulsar/PulsarOperationBinding.java | 23 +++ .../redis/RedisOperationBinding.java | 21 +++ .../operation/sns/SNSOperationBinding.java | 21 +++ .../solace/SolaceOperationBinding.java | 46 ++++++ .../solace/SolaceOperationDestination.java | 83 ++++++++++ .../solace/queue/SolaceOperationQueue.java | 82 ++++++++++ .../solace/topic/SolaceOperationTopic.java | 39 +++++ .../operation/sqs/SQSOperationBinding.java | 21 +++ .../stomp/STOMPOperationBinding.java | 21 +++ .../ws/WebSocketsOperationBinding.java | 21 +++ .../amqp/AMQPOperationBindingTest.kt | 30 ++++ .../http/HTTPOperationBindingTest.kt | 41 +++++ .../kafka/KafkaOperationBindingTest.kt | 30 ++++ .../mqtt/MQTTOperationBindingTest.kt | 22 +++ .../nats/NATSOperationBindingTest.kt | 21 +++ .../solace/SolaceOperationBindingTest.kt | 47 ++++++ .../amqp/amqpOperationBinding - extended.json | 18 +++ ...qpOperationBinding - wrongly extended.json | 23 +++ .../operation/amqp/amqpOperationBinding.json | 17 ++ .../http/httpOperationBinding - extended.json | 105 ++++++++++++ ...tpOperationBinding - wrongly extended.json | 25 +++ .../operation/http/httpOperationBinding.json | 19 +++ .../kafkaOperationBinding - extended.json | 102 ++++++++++++ ...kaOperationBinding - wrongly extended.json | 21 +++ .../kafka/kafkaOperationBinding.json | 15 ++ .../mqtt/mqttOperationBinding - extended.json | 10 ++ ...ttOperationBinding - wrongly extended.json | 11 ++ .../operation/mqtt/mqttOperationBinding.json | 5 + .../nats/natsOperationBinding - extended.json | 9 ++ ...tsOperationBinding - wrongly extended.json | 10 ++ .../operation/nats/natsOperationBinding.json | 4 + .../solaceOperationBinding - extended.json | 33 ++++ ...ceOperationBinding - wrongly extended.json | 37 +++++ .../solace/solaceOperationBinding.json | 31 ++++ 49 files changed, 1639 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/OperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/amqp/AMQPOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/amqp1/AMQP1OperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/anypointmq/AnypointMQOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/googlepubsub/GooglePubSubOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationMethod.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationType.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/ibmmq/IBMMQOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/jms/JMSOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/kafka/KafkaOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mercure/MercureOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mqtt/MQTTOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mqtt5/MQTT5OperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/nats/NATSOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/pulsar/PulsarOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/redis/RedisOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/sns/SNSOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/SolaceOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/SolaceOperationDestination.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/queue/SolaceOperationQueue.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/topic/SolaceOperationTopic.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/sqs/SQSOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/stomp/STOMPOperationBinding.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/ws/WebSocketsOperationBinding.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/amqp/AMQPOperationBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/http/HTTPOperationBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/kafka/KafkaOperationBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/mqtt/MQTTOperationBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/nats/NATSOperationBindingTest.kt create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/solace/SolaceOperationBindingTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/OperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/OperationBinding.java new file mode 100644 index 00000000..091629c8 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/OperationBinding.java @@ -0,0 +1,13 @@ +package com.asyncapi.v3.binding.operation; + +import com.asyncapi.v3.ExtendableObject; +import lombok.EqualsAndHashCode; + +/** + * Describes AsyncAPI operation binding. + * + * @author Pavel Bodiachevskii + */ +@EqualsAndHashCode(callSuper = true) +public class OperationBinding extends ExtendableObject { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/amqp/AMQPOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/amqp/AMQPOperationBinding.java new file mode 100644 index 00000000..56d53677 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/amqp/AMQPOperationBinding.java @@ -0,0 +1,150 @@ +package com.asyncapi.v3.binding.operation.amqp; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * Describes AMQP 0-9-1 operation binding. + *

+ * Contains information about the operation representation in AMQP. + * + * @version 0.2.0 + * @see AMQP operation binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes AMQP 0-9-1 operation binding.") +public class AMQPOperationBinding extends OperationBinding { + + /** + * TTL (Time-To-Live) for the message. It MUST be greater than or equal to zero. + *

+ * Applies to: publish, subscribe + */ + @Nullable + @javax.validation.constraints.Min( + value = 0, + message = "TTL (Time-To-Live) for the message must be greater than or equal to zero" + ) + @JsonProperty("expiration") + @JsonPropertyDescription("TTL (Time-To-Live) for the message. It MUST be greater than or equal to zero.") + private Integer expiration; + + /** + * Identifies the user who has sent the message. + *

+ * Applies to: publish, subscribe + */ + @Nullable + @JsonProperty("userId") + @JsonPropertyDescription("Identifies the user who has sent the message.") + private String userId; + + /** + * The routing keys the message should be routed to at the time of publishing. + *

+ * Applies to: publish, subscribe + */ + @Nullable + @JsonProperty("cc") + @JsonPropertyDescription("The routing keys the message should be routed to at the time of publishing.") + private List cc; + + /** + * A priority for the message. + *

+ * Applies to: publish, subscribe + */ + @Nullable + @JsonProperty("priority") + @JsonPropertyDescription("A priority for the message.") + private Integer priority; + + /** + * Delivery mode of the message. Its value MUST be either 1 (transient) or 2 (persistent). + *

+ * Applies to: publish, subscribe + */ + @Nullable + @javax.validation.constraints.Min( + value = 1, + message = "Delivery mode of the message must be either 1 (transient) or 2 (persistent)" + ) + @javax.validation.constraints.Max( + value = 2, + message = "Delivery mode of the message must be either 1 (transient) or 2 (persistent)" + ) + @JsonProperty("deliveryMode") + @JsonPropertyDescription("Delivery mode of the message. Its value MUST be either 1 (transient) or 2 (persistent).") + private Integer deliveryMode; + + /** + * Whether the message is mandatory or not. + *

+ * Applies to: publish + */ + @Nullable + @JsonProperty("mandatory") + @JsonPropertyDescription("Whether the message is mandatory or not.") + private Boolean mandatory; + + /** + * Like {@link #cc} but consumers will not receive this information. + *

+ * Applies to: publish + */ + @Nullable + @JsonProperty("bcc") + @JsonPropertyDescription("Like cc but consumers will not receive this information.") + private List bcc; + + /** + * Name of the queue where the consumer should send the response. + *

+ * Applies to: publish, subscribe + */ + @Nullable + @JsonProperty("replyTo") + @JsonPropertyDescription("Name of the queue where the consumer should send the response.") + private String replyTo; + + /** + * Whether the message should include a timestamp or not. + *

+ * Applies to: publish, subscribe + */ + @Nullable + @JsonProperty("timestamp") + @JsonPropertyDescription("Whether the message should include a timestamp or not.") + private Boolean timestamp; + + /** + * Whether the consumer should ack the message or not. + *

+ * Applies to: subscribe + */ + @Nullable + @JsonProperty("ack") + @JsonPropertyDescription("Whether the consumer should ack the message or not.") + private Boolean ack; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.2.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/amqp1/AMQP1OperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/amqp1/AMQP1OperationBinding.java new file mode 100644 index 00000000..29a7ce02 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/amqp1/AMQP1OperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.amqp1; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes AMQP 1.0 operation binding. + * + * @version 0.1.0 + * @see AMQP operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AMQP1OperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/anypointmq/AnypointMQOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/anypointmq/AnypointMQOperationBinding.java new file mode 100644 index 00000000..8555af46 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/anypointmq/AnypointMQOperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.anypointmq; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Anypoint MQ operation binding. + * + * @version 0.0.1 + * @see Anypoint MQ operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AnypointMQOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/googlepubsub/GooglePubSubOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/googlepubsub/GooglePubSubOperationBinding.java new file mode 100644 index 00000000..7b074d70 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/googlepubsub/GooglePubSubOperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.googlepubsub; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Google Cloud Pub/Sub operation binding. + * + * @version 0.1.0 + * @see Google Cloud Pub/Sub operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class GooglePubSubOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationBinding.java new file mode 100644 index 00000000..50a6c961 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationBinding.java @@ -0,0 +1,66 @@ +package com.asyncapi.v3.binding.operation.http; + +import com.asyncapi.v3.schema.Schema; +import com.asyncapi.v3.binding.operation.OperationBinding; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * Describes HTTP operation binding. + *

+ * Contains information about the operation representation in HTTP. + * + * @version 0.1.0 + * @see HTTP operation binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class HTTPOperationBinding extends OperationBinding { + + /** + * Required. + *

+ * Type of operation. Its value MUST be either request or response. + */ + @NotNull + @Builder.Default + @javax.validation.constraints.NotNull + @JsonProperty(value = "type", required = true) + @JsonPropertyDescription("Type of operation. Its value MUST be either request or response.") + private HTTPOperationType type = HTTPOperationType.REQUEST; + + /** + * When type is request, this is the HTTP method, otherwise it MUST be ignored. Its value MUST be one of + * GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, CONNECT, and TRACE. + */ + @Nullable + @JsonProperty("method") + @JsonPropertyDescription("When type is request, this is the HTTP method, otherwise it MUST be ignored. Its value MUST be one of GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, CONNECT, and TRACE.") + private HTTPOperationMethod method; + + /** + * A Schema object containing the definitions for each query parameter. This schema MUST be of type object + * and have a properties key. + */ + @Nullable + @JsonProperty("query") + @JsonPropertyDescription("A Schema object containing the definitions for each query parameter. This schema MUST be of type object and have a properties key.") + private Schema query; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationMethod.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationMethod.java new file mode 100644 index 00000000..d71ddf2a --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationMethod.java @@ -0,0 +1,22 @@ +package com.asyncapi.v3.binding.operation.http; + +/** + * Describes HTTP operation type. + *

+ * Contains information about the operation type. + * + * @version 0.1.0 + * @see HTTP operation binding + * @author Pavel Bodiachevskii + */ +public enum HTTPOperationMethod { + GET, + PUT, + POST, + PATCH, + DELETE, + HEAD, + OPTIONS, + CONNECT, + TRACE +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationType.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationType.java new file mode 100644 index 00000000..0c7d5031 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/http/HTTPOperationType.java @@ -0,0 +1,13 @@ +package com.asyncapi.v3.binding.operation.http; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public enum HTTPOperationType { + + @JsonProperty("request") + REQUEST, + + @JsonProperty("response") + RESPONSE + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/ibmmq/IBMMQOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/ibmmq/IBMMQOperationBinding.java new file mode 100644 index 00000000..0313e97f --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/ibmmq/IBMMQOperationBinding.java @@ -0,0 +1,23 @@ +package com.asyncapi.v3.binding.operation.ibmmq; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * Describes IBM MQ operation binding. + *

+ * This object MUST NOT contain any properties. Its name is reserved for future use. + * + * @version 0.1.0 + * @see IBM MQ operation binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class IBMMQOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/jms/JMSOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/jms/JMSOperationBinding.java new file mode 100644 index 00000000..f3a1f1a8 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/jms/JMSOperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.jms; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes JMS operation binding. + * + * @version 0.1.0 + * @see JMS operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class JMSOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/kafka/KafkaOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/kafka/KafkaOperationBinding.java new file mode 100644 index 00000000..c0558d01 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/kafka/KafkaOperationBinding.java @@ -0,0 +1,49 @@ +package com.asyncapi.v3.binding.operation.kafka; + +import com.asyncapi.v3.schema.Schema; +import com.asyncapi.v3.binding.operation.OperationBinding; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Kafka operation binding. + *

+ * Contains information about the operation representation in Kafka. + * + * @version 0.1.0 + * @see Kafka operation binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class KafkaOperationBinding extends OperationBinding { + + /** + * Id of the consumer group. + */ + @Nullable + @JsonProperty("groupId") + @JsonPropertyDescription("Id of the consumer group.") + private Schema groupId; + + /** + * Id of the consumer inside a consumer group. + */ + @Nullable + @JsonProperty("clientId") + @JsonPropertyDescription("Id of the consumer inside a consumer group.") + private Schema clientId; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + private String bindingVersion = "0.4.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mercure/MercureOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mercure/MercureOperationBinding.java new file mode 100644 index 00000000..10dcaa96 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mercure/MercureOperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.mercure; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Mercure operation binding. + * + * @version 0.1.0 + * @see Mercure operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MercureOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mqtt/MQTTOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mqtt/MQTTOperationBinding.java new file mode 100644 index 00000000..c9f36c7c --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mqtt/MQTTOperationBinding.java @@ -0,0 +1,67 @@ +package com.asyncapi.v3.binding.operation.mqtt; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes MQTT operation binding. + *

+ * Contains information about the operation representation in MQTT. + * + * @version 0.1.0 + * @see MQTT operation binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes MQTT operation binding.") +public class MQTTOperationBinding extends OperationBinding { + + /** + * Defines how hard the broker/client will try to ensure that a message is received. + * Its value MUST be either 0, 1 or 2. + *

+ * Applies to: publish, subscribe + */ + @Nullable + @javax.validation.constraints.Min( + value = 0, + message = "QoS must be greater or equals to 0." + ) + @javax.validation.constraints.Max( + value = 2, + message = "QoS must be lower or equals to 0." + ) + @JsonProperty("qos") + @JsonPropertyDescription("Defines the Quality of Service (QoS) levels for the message flow between client and server. Its value MUST be either 0 (At most once delivery), 1 (At least once delivery), or 2 (Exactly once delivery).") + private Integer qos; + + /** + * Whether the broker should retain the message or not. + *

+ * Applies to: publish, subscribe + */ + @Nullable + @JsonProperty("retain") + @JsonPropertyDescription("Whether the broker should retain the message or not.") + private Boolean retain; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + *

+ * Applies to: publish, subscribe + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mqtt5/MQTT5OperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mqtt5/MQTT5OperationBinding.java new file mode 100644 index 00000000..2964aad6 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/mqtt5/MQTT5OperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.mqtt5; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes MQTT 5 operation binding. + * + * @version 0.2.0 + * @see MQTT 5 operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class MQTT5OperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/nats/NATSOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/nats/NATSOperationBinding.java new file mode 100644 index 00000000..9a6c2cf2 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/nats/NATSOperationBinding.java @@ -0,0 +1,46 @@ +package com.asyncapi.v3.binding.operation.nats; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * Describes NATS operation binding. + * + * @version 0.1.0 + * @see NATS operation binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes NATS operation binding.") +public class NATSOperationBinding extends OperationBinding { + + /** + * Defines the name of the queue to use. It MUST NOT exceed 255 characters. + */ + @Nullable + @javax.validation.constraints.Size( + max = 255, + message = "Queue name must be lower or equals to 255." + ) + @JsonProperty("queue") + @JsonPropertyDescription("Defines the name of the queue to use. It MUST NOT exceed 255 characters.") + private String queue; + + /** + * The version of this binding. If omitted, "latest" MUST be assumed. + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.1.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/pulsar/PulsarOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/pulsar/PulsarOperationBinding.java new file mode 100644 index 00000000..3670d242 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/pulsar/PulsarOperationBinding.java @@ -0,0 +1,23 @@ +package com.asyncapi.v3.binding.operation.pulsar; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * Describes Pulsar operation binding. + *

+ * This object MUST NOT contain any properties. Its name is reserved for future use. + * + * @version 0.1.0 + * @see Pulsar operation binding + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class PulsarOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/redis/RedisOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/redis/RedisOperationBinding.java new file mode 100644 index 00000000..0c4eb8e0 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/redis/RedisOperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.redis; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes Redis operation binding. + * + * @version 0.1.0 + * @see Redis operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class RedisOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/sns/SNSOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/sns/SNSOperationBinding.java new file mode 100644 index 00000000..e0445fc8 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/sns/SNSOperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.sns; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes SNS operation binding. + * + * @version 0.1.0 + * @see SNS operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class SNSOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/SolaceOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/SolaceOperationBinding.java new file mode 100644 index 00000000..bd87d8a7 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/SolaceOperationBinding.java @@ -0,0 +1,46 @@ +package com.asyncapi.v3.binding.operation.solace; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * Describes Solace operation binding. + *

+ * Contains information about the operation representation in Solace PubSub+ Broker. + * + * @version 0.3.0 + * @see Solace operation binding + * @author Dennis Brinley, Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@JsonClassDescription("Describes Solace operation binding.") +public class SolaceOperationBinding extends OperationBinding { + + /** + * List of destinations + */ + @Nullable + @JsonProperty("destinations") + @JsonPropertyDescription("List of destinations") + private List destinations; + + /** + * The version of this binding. (e.g. bindingVersion: 0.3.0) + */ + @Nullable + @Builder.Default + @JsonProperty("bindingVersion") + @JsonPropertyDescription("The version of this binding.") + private String bindingVersion = "0.3.0"; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/SolaceOperationDestination.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/SolaceOperationDestination.java new file mode 100644 index 00000000..ef959dfb --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/SolaceOperationDestination.java @@ -0,0 +1,83 @@ +package com.asyncapi.v3.binding.operation.solace; + +import com.asyncapi.v3.binding.operation.solace.queue.SolaceOperationQueue; +import com.asyncapi.v3.binding.operation.solace.topic.SolaceOperationTopic; +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.jetbrains.annotations.Nullable; + +/** + * Describes Solace destination. + *

+ * Contains information about the destination in Solace PubSub+ Broker. + * + * @version 0.3.0 + * @see Solace operation binding + * @author Dennis Brinley, Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@JsonClassDescription("Describes Solace destination.") +public class SolaceOperationDestination { + + /** + * 'queue' or 'topic'. If the type is queue, then the subscriber can bind to the queue, which in turn will + * subscribe to the topic as represented by the channel name or to the provided topicSubscriptions. + */ + @Nullable + @JsonProperty("destinationType") + @JsonPropertyDescription("'queue' or 'topic'. If the type is queue, then the subscriber can bind to the queue, which in turn will subscribe to the topic as represented by the channel name or to the provided topicSubscriptions.") + private Type destinationType; + + /** + * 'direct' or 'persistent'. This determines the quality of service for publishing messages as documented here. + * Default is 'persistent'. + */ + @Nullable + @Builder.Default + @JsonProperty(value = "deliveryMode", defaultValue = "persistent") + @JsonPropertyDescription("'direct' or 'persistent'. This determines the quality of service for publishing messages as documented at https://docs.solace.com/Get-Started/Core-Concepts-Message-Delivery-Modes.htm. Default is 'persistent'.") + private DeliveryMode deliveryMode = DeliveryMode.PERSISTENT; + + /** + * Solace queue destination details. + */ + @Nullable + @JsonProperty("queue") + @JsonPropertyDescription("Solace queue destination details.") + private SolaceOperationQueue queue; + + /** + * Solace topic destination details. + */ + @Nullable + @JsonProperty("topic") + @JsonPropertyDescription("Solace topic destination details.") + private SolaceOperationTopic topic; + + public enum Type { + + @JsonProperty("queue") + QUEUE, + @JsonProperty("topic") + TOPIC + + } + + public enum DeliveryMode { + + @JsonProperty("direct") + DIRECT, + @JsonProperty("persistent") + PERSISTENT + + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/queue/SolaceOperationQueue.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/queue/SolaceOperationQueue.java new file mode 100644 index 00000000..d2c3f5c7 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/queue/SolaceOperationQueue.java @@ -0,0 +1,82 @@ +package com.asyncapi.v3.binding.operation.solace.queue; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * Describes Solace queue. + *

+ * Contains information about the queue in Solace PubSub+ Broker. + * + * @version 0.3.0 + * @see Solace operation binding + * @author Dennis Brinley, Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@JsonClassDescription("Describes Solace queue.") +public class SolaceOperationQueue { + + /** + * The name of the queue, only applicable when destinationType is 'queue'. + */ + @Nullable + @JsonProperty("name") + @JsonPropertyDescription("The name of the queue, only applicable when destinationType is 'queue'.") + private String name; + + /** + * A list of topics that the queue subscribes to, only applicable when destinationType is 'queue'. + * If none is given, the queue subscribes to the topic as represented by the channel name. + */ + @Nullable + @JsonProperty("topicSubscriptions") + @JsonPropertyDescription("A list of topics that the queue subscribes to, only applicable when destinationType is 'queue'. If none is given, the queue subscribes to the topic as represented by the channel name.") + private List topicSubscriptions; + + /** + * 'exclusive' or 'nonexclusive'. This is documented here. Only applicable when destinationType is 'queue'. + */ + @Nullable + @JsonProperty("accessType") + @JsonPropertyDescription("'exclusive' or 'nonexclusive'. This is documented at https://docs.solace.com/Messaging/Guaranteed-Msg/Endpoints.htm#Queues. Only applicable when destinationType is 'queue'.") + private AccessType accessType; + + /** + * The maximum amount of message spool that the given queue may use. This is documented here. + * Only applicable when destinationType is 'queue'. + */ + @Nullable + @JsonProperty("maxMsgSpoolSize") + @JsonPropertyDescription("The maximum amount of message spool that the given queue may use. This is documented at https://docs.solace.com/Messaging/Guaranteed-Msg/Message-Spooling.htm#max-spool-usage. Only applicable when destinationType is 'queue'.") + private String maxMsgSpoolSize; + + /** + * The maximum TTL to apply to messages to be spooled. This is documented here. + * Only applicable when destinationType is 'queue'. + */ + @Nullable + @JsonProperty("maxTtl") + @JsonPropertyDescription("The maximum TTL to apply to messages to be spooled. This is documented at https://docs.solace.com/Messaging/Guaranteed-Msg/Configuring-Queues.htm. Only applicable when destinationType is 'queue'.") + private String maxTtl; + + public enum AccessType { + + @JsonProperty("exclusive") + EXCLUSIVE, + @JsonProperty("non-exclusive") + NON_EXCLUSIVE + + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/topic/SolaceOperationTopic.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/topic/SolaceOperationTopic.java new file mode 100644 index 00000000..9d20880d --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/solace/topic/SolaceOperationTopic.java @@ -0,0 +1,39 @@ +package com.asyncapi.v3.binding.operation.solace.topic; + +import com.fasterxml.jackson.annotation.JsonClassDescription; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyDescription; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * Describes Solace topic. + *

+ * Contains information about the topic in Solace PubSub+ Broker. + * + * @version 0.3.0 + * @see Solace operation binding + * @author Dennis Brinley, Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@JsonClassDescription("Describes Solace topic.") +public class SolaceOperationTopic { + + /** + * A list of topics that the client subscribes to, only applicable when destinationType is 'topic'. + * If none is given, the client subscribes to the topic as represented by the channel name. + */ + @Nullable + @JsonProperty("topicSubscriptions") + @JsonPropertyDescription("A list of topics that the client subscribes to, only applicable when destinationType is 'topic'. If none is given, the client subscribes to the topic as represented by the channel name.") + protected List topicSubscriptions; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/sqs/SQSOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/sqs/SQSOperationBinding.java new file mode 100644 index 00000000..de34599b --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/sqs/SQSOperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.sqs; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes SQS operation binding. + * + * @version 0.1.0 + * @see SQS operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class SQSOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/stomp/STOMPOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/stomp/STOMPOperationBinding.java new file mode 100644 index 00000000..5679be40 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/stomp/STOMPOperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.stomp; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes STOMP operation binding. + * + * @version 0.1.0 + * @see STOMP operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class STOMPOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/ws/WebSocketsOperationBinding.java b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/ws/WebSocketsOperationBinding.java new file mode 100644 index 00000000..a2e14bc5 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/binding/operation/ws/WebSocketsOperationBinding.java @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.ws; + +import com.asyncapi.v3.binding.operation.OperationBinding; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * This class MUST NOT contain any properties. Its name is reserved for future use. + *

+ * Describes WebSockets operation binding. + * + * @version 0.1.0 + * @see WebSockets operation binding + * @author Pavel Bodiachevskii + */ +@Data +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class WebSocketsOperationBinding extends OperationBinding { +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/amqp/AMQPOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/amqp/AMQPOperationBindingTest.kt new file mode 100644 index 00000000..0fc26178 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/amqp/AMQPOperationBindingTest.kt @@ -0,0 +1,30 @@ +package com.asyncapi.v3.binding.operation.amqp + +import com.asyncapi.v3.SerDeTest + +class AMQPOperationBindingTest: SerDeTest() { + + override fun objectClass() = AMQPOperationBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/operation/amqp/amqpOperationBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/operation/amqp/amqpOperationBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/operation/amqp/amqpOperationBinding - wrongly extended.json" + + override fun build(): AMQPOperationBinding { + return AMQPOperationBinding.builder() + .expiration(100_000) + .userId("guest") + .cc(listOf("user.logs")) + .priority(10) + .deliveryMode(2) + .mandatory(false) + .bcc(listOf("external.audit")) + .replyTo("user.signedup") + .timestamp(true) + .ack(false) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/http/HTTPOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/http/HTTPOperationBindingTest.kt new file mode 100644 index 00000000..9a101826 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/http/HTTPOperationBindingTest.kt @@ -0,0 +1,41 @@ +package com.asyncapi.v3.binding.operation.http + +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3.schema.Schema +import com.asyncapi.v3.schema.Type +import java.math.BigDecimal + +class HTTPOperationBindingTest: SerDeTest() { + + override fun objectClass() = HTTPOperationBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/operation/http/httpOperationBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/operation/http/httpOperationBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/operation/http/httpOperationBinding - wrongly extended.json" + + override fun build(): HTTPOperationBinding { + return HTTPOperationBinding.builder() + .type(HTTPOperationType.REQUEST) + .method(HTTPOperationMethod.GET) + .query(Schema.builder() + .type(Type.OBJECT) + .required(listOf("companyId")) + .properties(mapOf( + Pair( + "companyId", + Schema.builder() + .type(Type.NUMBER) + .minimum(BigDecimal.ONE) + .description("The Id of the company.") + .build() + ) + )) + .additionalProperties(false) + .build() + ) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/kafka/KafkaOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/kafka/KafkaOperationBindingTest.kt new file mode 100644 index 00000000..e42eb7bf --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/kafka/KafkaOperationBindingTest.kt @@ -0,0 +1,30 @@ +package com.asyncapi.v3.binding.operation.kafka + +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3.schema.Schema +import com.asyncapi.v3.schema.Type + +class KafkaOperationBindingTest: SerDeTest() { + + override fun objectClass() = KafkaOperationBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/operation/kafka/kafkaOperationBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/operation/kafka/kafkaOperationBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json" + + override fun build(): KafkaOperationBinding { + return KafkaOperationBinding.builder() + .groupId(Schema.builder() + .type(Type.STRING) + .enumValue(listOf("myGroupId")) + .build()) + .clientId(Schema.builder() + .type(Type.STRING) + .enumValue(listOf("myClientId")) + .build()) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/mqtt/MQTTOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/mqtt/MQTTOperationBindingTest.kt new file mode 100644 index 00000000..e199cf50 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/mqtt/MQTTOperationBindingTest.kt @@ -0,0 +1,22 @@ +package com.asyncapi.v3.binding.operation.mqtt + +import com.asyncapi.v3.SerDeTest + +class MQTTOperationBindingTest: SerDeTest() { + + override fun objectClass() = MQTTOperationBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/operation/mqtt/mqttOperationBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/operation/mqtt/mqttOperationBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json" + + override fun build(): MQTTOperationBinding { + return MQTTOperationBinding.builder() + .qos(2) + .retain(true) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/nats/NATSOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/nats/NATSOperationBindingTest.kt new file mode 100644 index 00000000..60f0ef6c --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/nats/NATSOperationBindingTest.kt @@ -0,0 +1,21 @@ +package com.asyncapi.v3.binding.operation.nats + +import com.asyncapi.v3.SerDeTest + +class NATSOperationBindingTest: SerDeTest() { + + override fun objectClass() = NATSOperationBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/operation/nats/natsOperationBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/operation/nats/natsOperationBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/operation/nats/natsOperationBinding - wrongly extended.json" + + override fun build(): NATSOperationBinding { + return NATSOperationBinding.builder() + .queue("messages") + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/solace/SolaceOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/solace/SolaceOperationBindingTest.kt new file mode 100644 index 00000000..cae516f2 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/binding/operation/solace/SolaceOperationBindingTest.kt @@ -0,0 +1,47 @@ +package com.asyncapi.v3.binding.operation.solace + +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3.binding.operation.solace.queue.SolaceOperationQueue +import com.asyncapi.v3.binding.operation.solace.topic.SolaceOperationTopic + +class SolaceOperationBindingTest: SerDeTest() { + + override fun objectClass() = SolaceOperationBinding::class.java + + override fun baseObjectJson() = "/json/v3/binding/operation/solace/solaceOperationBinding.json" + + override fun extendedObjectJson() = "/json/v3/binding/operation/solace/solaceOperationBinding - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/binding/operation/solace/solaceOperationBinding - wrongly extended.json" + + override fun build(): SolaceOperationBinding { + return SolaceOperationBinding.builder() + .destinations(listOf( + SolaceOperationDestination.builder() + .destinationType(SolaceOperationDestination.Type.QUEUE) + .queue(SolaceOperationQueue.builder() + .name("CreatedHREvents") + .topicSubscriptions(listOf("person/*/created")) + .accessType(SolaceOperationQueue.AccessType.EXCLUSIVE) + .maxMsgSpoolSize("1,500") + .maxTtl("60") + .build() + ) + .build(), + SolaceOperationDestination.builder() + .destinationType(SolaceOperationDestination.Type.QUEUE) + .queue(SolaceOperationQueue.builder() + .name("UpdatedHREvents") + .topicSubscriptions(listOf("person/*/updated")) + .build() + ) + .topic(SolaceOperationTopic.builder() + .topicSubscriptions(listOf("person/*/updated")) + .build() + ) + .build() + )) + .build() + } + +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding - extended.json new file mode 100644 index 00000000..a19a9822 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding - extended.json @@ -0,0 +1,18 @@ +{ + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding - wrongly extended.json new file mode 100644 index 00000000..10ba23cd --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding - wrongly extended.json @@ -0,0 +1,23 @@ +{ + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding.json new file mode 100644 index 00000000..3bfeef70 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/amqp/amqpOperationBinding.json @@ -0,0 +1,17 @@ +{ + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - extended.json new file mode 100644 index 00000000..d114cb25 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - extended.json @@ -0,0 +1,105 @@ +{ + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - wrongly extended.json new file mode 100644 index 00000000..278fb5ae --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - wrongly extended.json @@ -0,0 +1,25 @@ +{ + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding.json new file mode 100644 index 00000000..d832076d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding.json @@ -0,0 +1,19 @@ +{ + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - extended.json new file mode 100644 index 00000000..9dbacd7c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - extended.json @@ -0,0 +1,102 @@ +{ + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json new file mode 100644 index 00000000..a36503dd --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json @@ -0,0 +1,21 @@ +{ + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding.json new file mode 100644 index 00000000..542d1fe2 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding.json @@ -0,0 +1,15 @@ +{ + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding - extended.json new file mode 100644 index 00000000..987a9860 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding - extended.json @@ -0,0 +1,10 @@ +{ + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json new file mode 100644 index 00000000..6a0014f5 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json @@ -0,0 +1,11 @@ +{ + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding.json new file mode 100644 index 00000000..7500db5c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/mqtt/mqttOperationBinding.json @@ -0,0 +1,5 @@ +{ + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding - extended.json new file mode 100644 index 00000000..2a77c3b3 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding - extended.json @@ -0,0 +1,9 @@ +{ + "queue" : "messages", + "bindingVersion" : "0.1.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding - wrongly extended.json new file mode 100644 index 00000000..1c6e0e8e --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "queue": "messages", + "bindingVersion": "0.1.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding.json new file mode 100644 index 00000000..53d874bb --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/nats/natsOperationBinding.json @@ -0,0 +1,4 @@ +{ + "queue": "messages", + "bindingVersion": "0.1.0" +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - extended.json new file mode 100644 index 00000000..e8a8ed88 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - extended.json @@ -0,0 +1,33 @@ +{ + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - wrongly extended.json new file mode 100644 index 00000000..ef371f24 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - wrongly extended.json @@ -0,0 +1,37 @@ +{ + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding.json new file mode 100644 index 00000000..e5b10158 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding.json @@ -0,0 +1,31 @@ +{ + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" +} \ No newline at end of file From 45d44b642eb733da4c3120ae59ef8d69ca41043d Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 4 Oct 2023 01:28:56 +0400 Subject: [PATCH 43/54] feat(3.0.0): OperationReplyAddress --- .../reply/OperationReplyAddress.java | 37 +++++++++++++++++++ .../reply/OperationReplyAddressTest.kt | 26 +++++++++++++ .../operationReplyAddress - extended.json | 9 +++++ ...rationReplyAddress - wrongly extended.json | 10 +++++ .../reply/operationReplyAddress.json | 4 ++ 5 files changed, 86 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyAddress.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyAddressTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyAddress.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyAddress.java new file mode 100644 index 00000000..768711d0 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyAddress.java @@ -0,0 +1,37 @@ +package com.asyncapi.v3._0_0.model.operation.reply; + +import com.asyncapi.v3.ExtendableObject; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +/** + * An object that specifies where an operation has to send the reply. + *

+ * For specifying and computing the location of a reply address, a runtime expression is used. + * + * @version 3.0.0 + * @see Operation + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class OperationReplyAddress extends ExtendableObject { + + /** + * An optional description of the address. CommonMark syntax can be used for rich text representation. + */ + @Nullable + private String description; + + /** + * REQUIRED. + *

+ * A runtime expression that specifies the location of the reply address. + */ + @Nullable + private String location; + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyAddressTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyAddressTest.kt new file mode 100644 index 00000000..d4060116 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyAddressTest.kt @@ -0,0 +1,26 @@ +package com.asyncapi.v3._0_0.model.operation.reply + +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class OperationReplyAddressTest: SerDeTest() { + + override fun objectClass() = OperationReplyAddress::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/operation/reply/operationReplyAddress.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/operation/reply/operationReplyAddress - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/operation/reply/operationReplyAddress - wrongly extended.json" + + override fun build(): OperationReplyAddress { + return OperationReplyAddress.builder() + .description("Consumer inbox") + .location("\$message.header#/replyTo") + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress - extended.json new file mode 100644 index 00000000..b29e8c8c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress - extended.json @@ -0,0 +1,9 @@ +{ + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo", + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress - wrongly extended.json new file mode 100644 index 00000000..570fd1fd --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress - wrongly extended.json @@ -0,0 +1,10 @@ +{ + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo", + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress.json new file mode 100644 index 00000000..90fa3ab1 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReplyAddress.json @@ -0,0 +1,4 @@ +{ + "description": "Consumer inbox", + "location": "$message.header#/replyTo" +} \ No newline at end of file From 2f89ae60c0391c092e2aa3d3cc3636d530648208 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 4 Oct 2023 01:42:42 +0400 Subject: [PATCH 44/54] feat(3.0.0): OperationReply --- .../OperationReplyAddressDeserializer.java | 22 +++++++ .../model/operation/reply/OperationReply.java | 60 +++++++++++++++++++ .../operation/reply/OperationReplyTest.kt | 56 +++++++++++++++++ .../reply/operationReply - extended.json | 21 +++++++ .../operationReply - wrongly extended.json | 26 ++++++++ ...rationReply with reference - extended.json | 20 +++++++ ...ply with reference - wrongly extended.json | 25 ++++++++ .../reply/operationReply with reference.json | 19 ++++++ .../model/operation/reply/operationReply.json | 20 +++++++ 9 files changed, 269 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/reply/OperationReplyAddressDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/reply/OperationReply.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/reply/OperationReplyAddressDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/reply/OperationReplyAddressDeserializer.java new file mode 100644 index 00000000..08d220cc --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/reply/OperationReplyAddressDeserializer.java @@ -0,0 +1,22 @@ +package com.asyncapi.v3._0_0.jackson.model.operation.reply; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.operation.reply.OperationReplyAddress; +import com.asyncapi.v3.jackson.ReferenceOrObjectDeserializer; + +/** + * Serializes operation reply address + * @author Pavel Bodiachevskii + */ +public class OperationReplyAddressDeserializer extends ReferenceOrObjectDeserializer { + + @Override + public Class objectTypeClass() { + return OperationReplyAddress.class; + } + + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/reply/OperationReply.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/reply/OperationReply.java new file mode 100644 index 00000000..b362e8a7 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/reply/OperationReply.java @@ -0,0 +1,60 @@ +package com.asyncapi.v3._0_0.model.operation.reply; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.jackson.model.operation.reply.OperationReplyAddressDeserializer; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +/** + * Describes the reply part that MAY be applied to an Operation Object. If an operation implements the request/reply + * pattern, the reply object represents the response message. + * + * @version 3.0.0 + * @see Operation + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class OperationReply extends ExtendableObject { + + /** + * Definition of the address that implementations MUST use for the reply. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link OperationReplyAddress}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = OperationReplyAddressDeserializer.class) + private Object address; + + /** + * A $ref pointer to the definition of the channel in which this operation is performed. + * When address is specified, the address property of the channel referenced by this property MUST be either null + * or not defined. Please note the channel property value MUST be a Reference Object and, therefore, MUST NOT contain + * a Channel Object. However, it is RECOMMENDED that parsers (or other software) dereference this property for + * a better development experience. + */ + @Nullable + private Reference channel; + + /** + * A list of $ref pointers pointing to the supported Message Objects that can be processed by this operation as reply. + * It MUST contain a subset of the messages defined in the channel referenced in this operation reply. Every message + * processed by this operation MUST be valid against one, and only one, of the message objects referenced in this list. + * Please note the messages property value MUST be a list of Reference Objects and, therefore, MUST NOT contain Message Objects. + * However, it is RECOMMENDED that parsers (or other software) dereference this property for a better development experience. + */ + @Nullable + private List messages; + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyTest.kt new file mode 100644 index 00000000..74af36c6 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/reply/OperationReplyTest.kt @@ -0,0 +1,56 @@ +package com.asyncapi.v3._0_0.model.operation.reply + +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class OperationReplyTest: SerDeTest() { + + override fun objectClass() = OperationReply::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/operation/reply/operationReply.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/operation/reply/operationReply - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/operation/reply/operationReply - wrongly extended.json" + + override fun build(): OperationReply { + return OperationReply.builder() + .address(OperationReplyAddressTest().build()) + .channel(Reference("#/components/channels/channel")) + .messages(listOf( + Reference("#/components/messages/message 1"), + Reference("#/components/messages/message 2"), + Reference("#/components/messages/message 3"), + )) + .build() + } + +} + +class OperationReplyTestWithReference: SerDeTest() { + + override fun objectClass() = OperationReply::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/operation/reply/operationReply with reference.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/operation/reply/operationReply with reference - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/operation/reply/operationReply with reference - wrongly extended.json" + + override fun build(): OperationReply { + return OperationReply.builder() + .address(Reference("#/components/addresses/address")) + .channel(Reference("#/components/channels/channel")) + .messages(listOf( + Reference("#/components/messages/message 1"), + Reference("#/components/messages/message 2"), + Reference("#/components/messages/message 3"), + )) + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply - extended.json new file mode 100644 index 00000000..83c51aca --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply - extended.json @@ -0,0 +1,21 @@ +{ + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply - wrongly extended.json new file mode 100644 index 00000000..2aeadcde --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply - wrongly extended.json @@ -0,0 +1,26 @@ +{ + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference - extended.json new file mode 100644 index 00000000..b844af0d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference - extended.json @@ -0,0 +1,20 @@ +{ + "address" : { + "$ref" : "#/components/addresses/address" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference - wrongly extended.json new file mode 100644 index 00000000..9bf87ab7 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference - wrongly extended.json @@ -0,0 +1,25 @@ +{ + "address": { + "$ref" : "#/components/addresses/address" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference.json new file mode 100644 index 00000000..b4a84b9b --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply with reference.json @@ -0,0 +1,19 @@ +{ + "address": { + "$ref": "#/components/addresses/address" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply.json new file mode 100644 index 00000000..59809bdb --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/reply/operationReply.json @@ -0,0 +1,20 @@ +{ + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] +} \ No newline at end of file From 5445d18301fdb8e67198f9ebc85a3f13ef11180b Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 4 Oct 2023 02:24:07 +0400 Subject: [PATCH 45/54] feat(3.0.0): OperationTrait --- .../reply/OperationReplyDeserializer.java | 22 ++ .../_0_0/model/operation/OperationTrait.java | 130 +++++++ .../OperationBindingsDeserializer.java | 69 ++++ .../model/operation/OperationTraitTest.kt | 134 +++++++ .../operation/operationTrait - extended.json | 342 ++++++++++++++++++ .../operationTrait - wrongly extended.json | 201 ++++++++++ ...rationTrait with reference - extended.json | 328 +++++++++++++++++ ...ait with reference - wrongly extended.json | 183 ++++++++++ .../operationTrait with reference.json | 177 +++++++++ .../3.0.0/model/operation/operationTrait.json | 195 ++++++++++ 10 files changed, 1781 insertions(+) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/reply/OperationReplyDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationTrait.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/operation/OperationBindingsDeserializer.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTraitTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/reply/OperationReplyDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/reply/OperationReplyDeserializer.java new file mode 100644 index 00000000..b019f92e --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/reply/OperationReplyDeserializer.java @@ -0,0 +1,22 @@ +package com.asyncapi.v3._0_0.jackson.model.operation.reply; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.operation.reply.OperationReply; +import com.asyncapi.v3.jackson.ReferenceOrObjectDeserializer; + +/** + * Serializes operation reply + * @author Pavel Bodiachevskii + */ +public class OperationReplyDeserializer extends ReferenceOrObjectDeserializer { + + @Override + public Class objectTypeClass() { + return OperationReply.class; + } + + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationTrait.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationTrait.java new file mode 100644 index 00000000..aa47246b --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationTrait.java @@ -0,0 +1,130 @@ +package com.asyncapi.v3._0_0.model.operation; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.jackson.model.ExternalDocumentationDeserializer; +import com.asyncapi.v3._0_0.jackson.model.TagsDeserializer; +import com.asyncapi.v3._0_0.jackson.model.operation.reply.OperationReplyDeserializer; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.asyncapi.v3._0_0.model.Tag; +import com.asyncapi.v3._0_0.model.operation.reply.OperationReply; +import com.asyncapi.v3.binding.operation.OperationBinding; +import com.asyncapi.v3.jackson.binding.operation.OperationBindingsDeserializer; +import com.asyncapi.v3.jackson.security_scheme.SecuritySchemesDeserializer; +import com.asyncapi.v3.security_scheme.SecurityScheme; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.List; +import java.util.Map; + +/** + * Describes a trait that MAY be applied to an Operation Object. This object MAY contain any property from the + * Operation Object, except the action, channel and traits ones. + * + * @version 3.0.0 + * @see Operation + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class OperationTrait extends ExtendableObject { + + /** + * A human-friendly title for the operation. + */ + @Nullable + private String title; + + /** + * A short summary of what the operation is about. + */ + @Nullable + private String summary; + + /** + * A verbose explanation of the operation. CommonMark syntax can be used for rich text representation. + */ + @Nullable + private String description; + + /** + * A declaration of which security schemes are associated with this operation. + * Only one of the security scheme objects MUST be satisfied to authorize an operation. + * In cases where Server Security also applies, it MUST also be satisfied. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link SecurityScheme}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = SecuritySchemesDeserializer.class) + private List security; + + /** + * A list of tags for logical grouping and categorization of operations. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link Tag}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = TagsDeserializer.class) + private List tags; + + /** + * Additional external documentation for this channel. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link ExternalDocumentation}
  • + *
+ */ + @Nullable + @JsonDeserialize(using = ExternalDocumentationDeserializer.class) + private Object externalDocs; + + /** + * A map where the keys describe the name of the protocol and the values describe protocol-specific definitions for the operation. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link OperationBinding}
  • + *
+ */ + @JsonDeserialize(using = OperationBindingsDeserializer.class) + private Map bindings; + + /** + * A list of $ref pointers pointing to the supported Message Objects that can be processed by this operation. + * It MUST contain a subset of the messages defined in the channel referenced in this operation. + * Every message processed by this operation MUST be valid against one, and only one, of the message objects + * referenced in this list. Please note the messages property value MUST be a list of Reference Objects and, + * therefore, MUST NOT contain Message Objects. However, it is RECOMMENDED that parsers (or other software) + * dereference this property for a better development experience. + */ + private List messages; + + /** + * The definition of the reply in a request-reply operation. + *

+ * MUST BE: + *

    + *
  • {@link Reference}
  • + *
  • {@link OperationReply}
  • + *
+ */ + @JsonDeserialize(using = OperationReplyDeserializer.class) + private Object reply; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/operation/OperationBindingsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/operation/OperationBindingsDeserializer.java new file mode 100644 index 00000000..0b4b86e1 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/jackson/binding/operation/OperationBindingsDeserializer.java @@ -0,0 +1,69 @@ +package com.asyncapi.v3.jackson.binding.operation; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3.binding.operation.amqp.AMQPOperationBinding; +import com.asyncapi.v3.binding.operation.amqp1.AMQP1OperationBinding; +import com.asyncapi.v3.binding.operation.anypointmq.AnypointMQOperationBinding; +import com.asyncapi.v3.binding.operation.googlepubsub.GooglePubSubOperationBinding; +import com.asyncapi.v3.binding.operation.http.HTTPOperationBinding; +import com.asyncapi.v3.binding.operation.ibmmq.IBMMQOperationBinding; +import com.asyncapi.v3.binding.operation.jms.JMSOperationBinding; +import com.asyncapi.v3.binding.operation.kafka.KafkaOperationBinding; +import com.asyncapi.v3.binding.operation.mercure.MercureOperationBinding; +import com.asyncapi.v3.binding.operation.mqtt.MQTTOperationBinding; +import com.asyncapi.v3.binding.operation.mqtt5.MQTT5OperationBinding; +import com.asyncapi.v3.binding.operation.nats.NATSOperationBinding; +import com.asyncapi.v3.binding.operation.pulsar.PulsarOperationBinding; +import com.asyncapi.v3.binding.operation.redis.RedisOperationBinding; +import com.asyncapi.v3.binding.operation.sns.SNSOperationBinding; +import com.asyncapi.v3.binding.operation.solace.SolaceOperationBinding; +import com.asyncapi.v3.binding.operation.sqs.SQSOperationBinding; +import com.asyncapi.v3.binding.operation.stomp.STOMPOperationBinding; +import com.asyncapi.v3.binding.operation.ws.WebSocketsOperationBinding; +import com.asyncapi.v3.jackson.BindingsMapDeserializer; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.JsonNode; + +import java.io.IOException; + +/** + * Serializes operation bindings map. + * + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +public class OperationBindingsDeserializer extends BindingsMapDeserializer { + + public Object chooseKnownPojo(String bindingKey, JsonNode binding, ObjectCodec objectCodec) throws IOException { + try (JsonParser jsonParser = binding.traverse(objectCodec)) { + if (binding.get("$ref" ) != null) { + return jsonParser.readValueAs(Reference.class); + } + + switch (bindingKey) { + case "amqp": return jsonParser.readValueAs(AMQPOperationBinding.class); + case "amqp1": return jsonParser.readValueAs(AMQP1OperationBinding.class); + case "anypointmq": return jsonParser.readValueAs(AnypointMQOperationBinding.class); + case "googlepubsub": return jsonParser.readValueAs(GooglePubSubOperationBinding.class); + case "http": return jsonParser.readValueAs(HTTPOperationBinding.class); + case "ibmmq": return jsonParser.readValueAs(IBMMQOperationBinding.class); + case "jms": return jsonParser.readValueAs(JMSOperationBinding.class); + case "kafka": return jsonParser.readValueAs(KafkaOperationBinding.class); + case "mercure": return jsonParser.readValueAs(MercureOperationBinding.class); + case "mqtt": return jsonParser.readValueAs(MQTTOperationBinding.class); + case "mqtt5": return jsonParser.readValueAs(MQTT5OperationBinding.class); + case "nats": return jsonParser.readValueAs(NATSOperationBinding.class); + case "pulsar": return jsonParser.readValueAs(PulsarOperationBinding.class); + case "redis": return jsonParser.readValueAs(RedisOperationBinding.class); + case "sns": return jsonParser.readValueAs(SNSOperationBinding.class); + case "solace": return jsonParser.readValueAs(SolaceOperationBinding.class); + case "sqs": return jsonParser.readValueAs(SQSOperationBinding.class); + case "stomp": return jsonParser.readValueAs(STOMPOperationBinding.class); + case "ws": return jsonParser.readValueAs(WebSocketsOperationBinding.class); + default: return null; + } + } + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTraitTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTraitTest.kt new file mode 100644 index 00000000..38c081a8 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTraitTest.kt @@ -0,0 +1,134 @@ +package com.asyncapi.v3._0_0.model.operation + +import com.asyncapi.v3.binding.operation.amqp.AMQPOperationBindingTest +import com.asyncapi.v3.binding.operation.http.HTTPOperationBindingTest +import com.asyncapi.v3.binding.operation.kafka.KafkaOperationBindingTest +import com.asyncapi.v3.binding.operation.mqtt.MQTTOperationBindingTest +import com.asyncapi.v3.binding.operation.nats.NATSOperationBindingTest +import com.asyncapi.v3.binding.operation.solace.SolaceOperationBindingTest +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3._0_0.model.ExternalDocumentation +import com.asyncapi.v3._0_0.model.Tag +import com.asyncapi.v3._0_0.model.operation.reply.OperationReplyTest +import com.asyncapi.v3.security_scheme.ApiKeySecuritySchemeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class OperationTraitTest: SerDeTest() { + + override fun objectClass() = OperationTrait::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/operation/operationTrait.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/operation/operationTrait - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/operation/operationTrait - wrongly extended.json" + + override fun build(): OperationTrait { + return OperationTrait.builder() + .title("Send message operation") + .summary("Send message") + .description("Send message to remote server") + .security(listOf( + ApiKeySecuritySchemeTest().build(), + Reference("#/components/security/plain") + )) + .tags(listOf( + Tag("messages", "operations with messages", ExternalDocumentation( + "Messages validation rules", "messages/validation-rules" + )), + Reference("#/components/tags/tag") + )) + .externalDocs(ExternalDocumentation("Messages validation rules", "messages/validation-rules")) + .bindings(mapOf( + Pair("amqp", AMQPOperationBindingTest().build()), + Pair("amqp1", Reference("#/components/operationBindings/amqp1")), + Pair("anypointmq", Reference("#/components/operationBindings/anypointmq")), + Pair("googlepubsub", Reference("#/components/operationBindings/googlepubsub")), + Pair("http", HTTPOperationBindingTest().build()), + Pair("ibmmq", Reference("#/components/operationBindings/ibmmq")), + Pair("jms", Reference("#/components/operationBindings/jms")), + Pair("kafka", KafkaOperationBindingTest().build()), + Pair("mercure", Reference("#/components/operationBindings/mercure")), + Pair("mqtt", MQTTOperationBindingTest().build()), + Pair("mqtt5", Reference("#/components/operationBindings/mqtt5")), + Pair("nats", NATSOperationBindingTest().build()), + Pair("pulsar", Reference("#/components/operationBindings/pulsar")), + Pair("redis", Reference("#/components/operationBindings/redis")), + Pair("sns", Reference("#/components/operationBindings/sns")), + Pair("solace", SolaceOperationBindingTest().build()), + Pair("sqs", Reference("#/components/operationBindings/sqs")), + Pair("stomp", Reference("#/components/operationBindings/stomp")), + Pair("ws", Reference("#/components/operationBindings/ws")) + )) + .messages(listOf( + Reference("#/components/messages/message 1"), + Reference("#/components/messages/message 2"), + Reference("#/components/messages/message 3"), + )) + .reply(OperationReplyTest().build()) + .build() + } + +} + +class OperationTraitTestWithReference: SerDeTest() { + + override fun objectClass() = OperationTrait::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/operation/operationTrait with reference.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/operation/operationTrait with reference - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/operation/operationTrait with reference - wrongly extended.json" + + override fun build(): OperationTrait { + return OperationTrait.builder() + .title("Send message operation") + .summary("Send message") + .description("Send message to remote server") + .security(listOf( + ApiKeySecuritySchemeTest().build(), + Reference("#/components/security/plain") + )) + .tags(listOf( + Tag("messages", "operations with messages", ExternalDocumentation( + "Messages validation rules", "messages/validation-rules" + )), + Reference("#/components/tags/tag") + )) + .externalDocs(Reference("#/components/externalDocs/external-doc")) + .bindings(mapOf( + Pair("amqp", AMQPOperationBindingTest().build()), + Pair("amqp1", Reference("#/components/operationBindings/amqp1")), + Pair("anypointmq", Reference("#/components/operationBindings/anypointmq")), + Pair("googlepubsub", Reference("#/components/operationBindings/googlepubsub")), + Pair("http", HTTPOperationBindingTest().build()), + Pair("ibmmq", Reference("#/components/operationBindings/ibmmq")), + Pair("jms", Reference("#/components/operationBindings/jms")), + Pair("kafka", KafkaOperationBindingTest().build()), + Pair("mercure", Reference("#/components/operationBindings/mercure")), + Pair("mqtt", MQTTOperationBindingTest().build()), + Pair("mqtt5", Reference("#/components/operationBindings/mqtt5")), + Pair("nats", NATSOperationBindingTest().build()), + Pair("pulsar", Reference("#/components/operationBindings/pulsar")), + Pair("redis", Reference("#/components/operationBindings/redis")), + Pair("sns", Reference("#/components/operationBindings/sns")), + Pair("solace", SolaceOperationBindingTest().build()), + Pair("sqs", Reference("#/components/operationBindings/sqs")), + Pair("stomp", Reference("#/components/operationBindings/stomp")), + Pair("ws", Reference("#/components/operationBindings/ws")) + )) + .messages(listOf( + Reference("#/components/messages/message 1"), + Reference("#/components/messages/message 2"), + Reference("#/components/messages/message 3"), + )) + .reply(Reference("#/components/replies/reply")) + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - extended.json new file mode 100644 index 00000000..b91314eb --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - extended.json @@ -0,0 +1,342 @@ +{ + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - wrongly extended.json new file mode 100644 index 00000000..6b932104 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - wrongly extended.json @@ -0,0 +1,201 @@ +{ + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - extended.json new file mode 100644 index 00000000..57099242 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - extended.json @@ -0,0 +1,328 @@ +{ + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - wrongly extended.json new file mode 100644 index 00000000..bb25657b --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - wrongly extended.json @@ -0,0 +1,183 @@ +{ + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference.json new file mode 100644 index 00000000..515a29c9 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference.json @@ -0,0 +1,177 @@ +{ + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait.json new file mode 100644 index 00000000..ac447907 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait.json @@ -0,0 +1,195 @@ +{ + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } +} \ No newline at end of file From 0bb710e3008957b4cd760615fdab5306126f5ec8 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 4 Oct 2023 02:27:03 +0400 Subject: [PATCH 46/54] feat(3.0.0): OperationTrait @Nullable --- .../com/asyncapi/v3/_0_0/model/operation/OperationTrait.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationTrait.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationTrait.java index aa47246b..891a5ed2 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationTrait.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationTrait.java @@ -102,6 +102,7 @@ public class OperationTrait extends ExtendableObject { *
  • {@link OperationBinding}
  • * */ + @Nullable @JsonDeserialize(using = OperationBindingsDeserializer.class) private Map bindings; @@ -113,6 +114,7 @@ public class OperationTrait extends ExtendableObject { * therefore, MUST NOT contain Message Objects. However, it is RECOMMENDED that parsers (or other software) * dereference this property for a better development experience. */ + @Nullable private List messages; /** @@ -124,6 +126,7 @@ public class OperationTrait extends ExtendableObject { *
  • {@link OperationReply}
  • * */ + @Nullable @JsonDeserialize(using = OperationReplyDeserializer.class) private Object reply; From e9e72a4c3a5a278d8346db5ecf653c895a9aa827 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Wed, 4 Oct 2023 03:02:53 +0400 Subject: [PATCH 47/54] feat(3.0.0): Operation --- .../OperationTraitsDeserializer.java | 24 + .../com/asyncapi/v3/_0_0/model/AsyncAPI.java | 3 +- .../v3/_0_0/model/operation/Operation.java | 167 +++ .../_0_0/model/operation/OperationAction.java | 13 + .../v3/_0_0/model/operation/OperationTest.kt | 148 +++ .../model/operation/operation - extended.json | 1007 +++++++++++++++++ .../operation - wrongly extended.json | 580 ++++++++++ .../operation with reference - extended.json | 993 ++++++++++++++++ ...ion with reference - wrongly extended.json | 562 +++++++++ .../operation/operation with reference.json | 556 +++++++++ .../v3/3.0.0/model/operation/operation.json | 574 ++++++++++ 11 files changed, 4626 insertions(+), 1 deletion(-) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/OperationTraitsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/Operation.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationAction.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/OperationTraitsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/OperationTraitsDeserializer.java new file mode 100644 index 00000000..ee7cf16b --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/OperationTraitsDeserializer.java @@ -0,0 +1,24 @@ +package com.asyncapi.v3._0_0.jackson.model.operation; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.operation.OperationTrait; +import com.asyncapi.v3.jackson.ListOfReferencesOrObjectsDeserializer; + +/** + * Serializes operation traits list. + * + * @author Pavel Bodiachevskii + */ +public class OperationTraitsDeserializer extends ListOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return OperationTrait.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java index b65617bd..fbb1fd1e 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java @@ -4,6 +4,7 @@ import com.asyncapi.v3._0_0.model.channel.Channel; import com.asyncapi.v3._0_0.model.component.Components; import com.asyncapi.v3._0_0.model.info.Info; +import com.asyncapi.v3._0_0.model.operation.Operation; import com.asyncapi.v3._0_0.model.server.Server; import lombok.*; import org.jetbrains.annotations.NotNull; @@ -96,7 +97,7 @@ public class AsyncAPI extends ExtendableObject { */ @Nullable @Builder.Default - private Map operations = new HashMap<>(); + private Map operations = new HashMap<>(); /** * An element to hold various schemas for the specification. diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/Operation.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/Operation.java new file mode 100644 index 00000000..71e08da5 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/Operation.java @@ -0,0 +1,167 @@ +package com.asyncapi.v3._0_0.model.operation; + +import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.jackson.model.ExternalDocumentationDeserializer; +import com.asyncapi.v3._0_0.jackson.model.TagsDeserializer; +import com.asyncapi.v3._0_0.jackson.model.operation.OperationTraitsDeserializer; +import com.asyncapi.v3._0_0.jackson.model.operation.reply.OperationReplyDeserializer; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.asyncapi.v3._0_0.model.Tag; +import com.asyncapi.v3._0_0.model.operation.reply.OperationReply; +import com.asyncapi.v3.binding.operation.OperationBinding; +import com.asyncapi.v3.jackson.binding.operation.OperationBindingsDeserializer; +import com.asyncapi.v3.jackson.security_scheme.SecuritySchemesDeserializer; +import com.asyncapi.v3.security_scheme.SecurityScheme; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.List; +import java.util.Map; + +/** + * Describes a specific operation. + * + * @version 3.0.0 + * @see Operation + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class Operation extends ExtendableObject { + + /** + * Required. + *

    + * Use send when it's expected that the application will send a message to the given channel, and receive when + * the application should expect receiving messages from the given channel. + */ + @NotNull + private OperationAction action; + + /** + * Required. + *

    + * A $ref pointer to the definition of the channel in which this operation is performed. + * Please note the channel property value MUST be a Reference Object and, therefore, MUST NOT contain a Channel Object. + * However, it is RECOMMENDED that parsers (or other software) dereference this property for a better development experience. + */ + @NotNull + private Reference channel; + + /** + * A human-friendly title for the operation. + */ + @Nullable + private String title; + + /** + * A short summary of what the operation is about. + */ + @Nullable + private String summary; + + /** + * A verbose explanation of the operation. CommonMark syntax can be used for rich text representation. + */ + @Nullable + private String description; + + /** + * A declaration of which security schemes are associated with this operation. + * Only one of the security scheme objects MUST be satisfied to authorize an operation. + * In cases where Server Security also applies, it MUST also be satisfied. + *

    + * MUST BE: + *

      + *
    • {@link Reference}
    • + *
    • {@link SecurityScheme}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = SecuritySchemesDeserializer.class) + private List security; + + /** + * A list of tags for logical grouping and categorization of operations. + *

    + * MUST BE: + *

      + *
    • {@link Reference}
    • + *
    • {@link Tag}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = TagsDeserializer.class) + private List tags; + + /** + * Additional external documentation for this channel. + *

    + * MUST BE: + *

      + *
    • {@link Reference}
    • + *
    • {@link ExternalDocumentation}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ExternalDocumentationDeserializer.class) + private Object externalDocs; + + /** + * A map where the keys describe the name of the protocol and the values describe protocol-specific definitions for the operation. + *

    + * MUST BE: + *

      + *
    • {@link Reference}
    • + *
    • {@link OperationBinding}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = OperationBindingsDeserializer.class) + private Map bindings; + + /** + * A list of traits to apply to the operation object. Traits MUST be merged using traits merge mechanism. + * The resulting object MUST be a valid Operation Object. + *

    + * MUST BE: + *

      + *
    • {@link Reference}
    • + *
    • {@link OperationTrait}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = OperationTraitsDeserializer.class) + private List traits; + + /** + * A list of $ref pointers pointing to the supported Message Objects that can be processed by this operation. + * It MUST contain a subset of the messages defined in the channel referenced in this operation. + * Every message processed by this operation MUST be valid against one, and only one, of the message objects + * referenced in this list. Please note the messages property value MUST be a list of Reference Objects and, + * therefore, MUST NOT contain Message Objects. However, it is RECOMMENDED that parsers (or other software) + * dereference this property for a better development experience. + */ + @Nullable + private List messages; + + /** + * The definition of the reply in a request-reply operation. + *

    + * MUST BE: + *

      + *
    • {@link Reference}
    • + *
    • {@link OperationReply}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = OperationReplyDeserializer.class) + private Object reply; + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationAction.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationAction.java new file mode 100644 index 00000000..17bd85b7 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/operation/OperationAction.java @@ -0,0 +1,13 @@ +package com.asyncapi.v3._0_0.model.operation; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public enum OperationAction { + + @JsonProperty("send") + SEND, + + @JsonProperty("receive") + RECEIVE + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTest.kt new file mode 100644 index 00000000..09d088c8 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTest.kt @@ -0,0 +1,148 @@ +package com.asyncapi.v3._0_0.model.operation + +import com.asyncapi.v3.binding.operation.amqp.AMQPOperationBindingTest +import com.asyncapi.v3.binding.operation.http.HTTPOperationBindingTest +import com.asyncapi.v3.binding.operation.kafka.KafkaOperationBindingTest +import com.asyncapi.v3.binding.operation.mqtt.MQTTOperationBindingTest +import com.asyncapi.v3.binding.operation.nats.NATSOperationBindingTest +import com.asyncapi.v3.binding.operation.solace.SolaceOperationBindingTest +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3._0_0.model.ExternalDocumentation +import com.asyncapi.v3._0_0.model.Tag +import com.asyncapi.v3._0_0.model.operation.reply.OperationReplyTest +import com.asyncapi.v3.security_scheme.ApiKeySecuritySchemeTest + +/** + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +class OperationTest: SerDeTest() { + + override fun objectClass() = Operation::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/operation/operation.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/operation/operation - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/operation/operation - wrongly extended.json" + + override fun build(): Operation { + return Operation.builder() + .action(OperationAction.SEND) + .channel(Reference("#/components/channels/channel")) + .title("Send message operation") + .summary("Send message") + .description("Send message to remote server") + .security(listOf( + ApiKeySecuritySchemeTest().build(), + Reference("#/components/security/plain") + )) + .tags(listOf( + Tag("messages", "operations with messages", ExternalDocumentation( + "Messages validation rules", "messages/validation-rules" + )), + Reference("#/components/tags/tag") + )) + .externalDocs(ExternalDocumentation("Messages validation rules", "messages/validation-rules")) + .bindings(mapOf( + Pair("amqp", AMQPOperationBindingTest().build()), + Pair("amqp1", Reference("#/components/operationBindings/amqp1")), + Pair("anypointmq", Reference("#/components/operationBindings/anypointmq")), + Pair("googlepubsub", Reference("#/components/operationBindings/googlepubsub")), + Pair("http", HTTPOperationBindingTest().build()), + Pair("ibmmq", Reference("#/components/operationBindings/ibmmq")), + Pair("jms", Reference("#/components/operationBindings/jms")), + Pair("kafka", KafkaOperationBindingTest().build()), + Pair("mercure", Reference("#/components/operationBindings/mercure")), + Pair("mqtt", MQTTOperationBindingTest().build()), + Pair("mqtt5", Reference("#/components/operationBindings/mqtt5")), + Pair("nats", NATSOperationBindingTest().build()), + Pair("pulsar", Reference("#/components/operationBindings/pulsar")), + Pair("redis", Reference("#/components/operationBindings/redis")), + Pair("sns", Reference("#/components/operationBindings/sns")), + Pair("solace", SolaceOperationBindingTest().build()), + Pair("sqs", Reference("#/components/operationBindings/sqs")), + Pair("stomp", Reference("#/components/operationBindings/stomp")), + Pair("ws", Reference("#/components/operationBindings/ws")) + )) + .traits(listOf( + OperationTraitTest().build(), + OperationTraitTestWithReference().build(), + Reference("#/components/operations/trait") + )) + .messages(listOf( + Reference("#/components/messages/message 1"), + Reference("#/components/messages/message 2"), + Reference("#/components/messages/message 3"), + )) + .reply(OperationReplyTest().build()) + .build() + } + +} + +class OperationTestWithReference: SerDeTest() { + + override fun objectClass() = Operation::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/operation/operation with reference.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/operation/operation with reference - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/operation/operation with reference - wrongly extended.json" + + override fun build(): Operation { + return Operation.builder() + .action(OperationAction.RECEIVE) + .channel(Reference("#/components/channels/channel")) + .title("Send message operation") + .summary("Send message") + .description("Send message to remote server") + .security(listOf( + ApiKeySecuritySchemeTest().build(), + Reference("#/components/security/plain") + )) + .tags(listOf( + Tag("messages", "operations with messages", ExternalDocumentation( + "Messages validation rules", "messages/validation-rules" + )), + Reference("#/components/tags/tag") + )) + .externalDocs(Reference("#/components/externalDocs/external-doc")) + .bindings(mapOf( + Pair("amqp", AMQPOperationBindingTest().build()), + Pair("amqp1", Reference("#/components/operationBindings/amqp1")), + Pair("anypointmq", Reference("#/components/operationBindings/anypointmq")), + Pair("googlepubsub", Reference("#/components/operationBindings/googlepubsub")), + Pair("http", HTTPOperationBindingTest().build()), + Pair("ibmmq", Reference("#/components/operationBindings/ibmmq")), + Pair("jms", Reference("#/components/operationBindings/jms")), + Pair("kafka", KafkaOperationBindingTest().build()), + Pair("mercure", Reference("#/components/operationBindings/mercure")), + Pair("mqtt", MQTTOperationBindingTest().build()), + Pair("mqtt5", Reference("#/components/operationBindings/mqtt5")), + Pair("nats", NATSOperationBindingTest().build()), + Pair("pulsar", Reference("#/components/operationBindings/pulsar")), + Pair("redis", Reference("#/components/operationBindings/redis")), + Pair("sns", Reference("#/components/operationBindings/sns")), + Pair("solace", SolaceOperationBindingTest().build()), + Pair("sqs", Reference("#/components/operationBindings/sqs")), + Pair("stomp", Reference("#/components/operationBindings/stomp")), + Pair("ws", Reference("#/components/operationBindings/ws")) + )) + .traits(listOf( + OperationTraitTest().build(), + OperationTraitTestWithReference().build(), + Reference("#/components/operations/trait") + )) + .messages(listOf( + Reference("#/components/messages/message 1"), + Reference("#/components/messages/message 2"), + Reference("#/components/messages/message 3"), + )) + .reply(Reference("#/components/replies/reply")) + .build() + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - extended.json new file mode 100644 index 00000000..9e457c60 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - extended.json @@ -0,0 +1,1007 @@ +{ + "action" : "send", + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "traits" : [ { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, { + "$ref" : "#/components/operations/trait" + } ], + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - wrongly extended.json new file mode 100644 index 00000000..533f605c --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - wrongly extended.json @@ -0,0 +1,580 @@ +{ + "action": "send", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - extended.json new file mode 100644 index 00000000..ea23f270 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - extended.json @@ -0,0 +1,993 @@ +{ + "action" : "receive", + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "traits" : [ { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, { + "$ref" : "#/components/operations/trait" + } ], + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - wrongly extended.json new file mode 100644 index 00000000..20e049dc --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - wrongly extended.json @@ -0,0 +1,562 @@ +{ + "action": "receive", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference.json new file mode 100644 index 00000000..f6bfb55d --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference.json @@ -0,0 +1,556 @@ +{ + "action": "receive", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation.json new file mode 100644 index 00000000..5e32db03 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation.json @@ -0,0 +1,574 @@ +{ + "action": "send", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } +} \ No newline at end of file From 1362ab5ba6be850710d03f99a89db3cdf0663463 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Thu, 5 Oct 2023 01:38:13 +0400 Subject: [PATCH 48/54] feat(3.0.0): Components --- .../ComponentsChannelsDeserializer.java | 19 + .../ComponentsCorrelationIdsDeserializer.java | 19 + .../ComponentsExternalDocsDeserializer.java | 19 + .../ComponentsMessageTraitsDeserializer.java | 19 + .../ComponentsMessagesDeserializer.java | 19 + ...ComponentsOperationTraitsDeserializer.java | 19 + .../ComponentsOperationsDeserializer.java | 19 + .../ComponentsParametersDeserializer.java | 19 + .../ComponentsRepliesDeserializer.java | 19 + .../ComponentsReplyAddressesDeserializer.java | 19 + .../ComponentsSchemasDeserializer.java | 95 + ...ComponentsSecuritySchemesDeserializer.java | 19 + ...ComponentsServerVariablesDeserializer.java | 19 + .../ComponentsServersDeserializer.java | 19 + .../component/ComponentsTagsDeserializer.java | 19 + .../v3/_0_0/model/component/Components.java | 291 +- .../_0_0/model/channel/message/MessageTest.kt | 48 +- .../v3/_0_0/model/component/ComponentsTest.kt | 164 + .../v3/_0_0/model/operation/OperationTest.kt | 48 +- .../components/components - extended.json | 21126 ++++++++++++++++ .../components - wrongly extended.json | 8582 +++++++ .../v3/3.0.0/model/components/components.json | 8576 +++++++ 22 files changed, 39153 insertions(+), 43 deletions(-) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsChannelsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsCorrelationIdsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsExternalDocsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsMessageTraitsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsMessagesDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsOperationTraitsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsOperationsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsParametersDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsRepliesDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsReplyAddressesDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsSchemasDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsSecuritySchemesDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsServerVariablesDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsServersDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsTagsDeserializer.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/component/ComponentsTest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsChannelsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsChannelsDeserializer.java new file mode 100644 index 00000000..3a233979 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsChannelsDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.channel.Channel; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsChannelsDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Channel.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsCorrelationIdsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsCorrelationIdsDeserializer.java new file mode 100644 index 00000000..3ca82f14 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsCorrelationIdsDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.channel.message.CorrelationId; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsCorrelationIdsDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return CorrelationId.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsExternalDocsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsExternalDocsDeserializer.java new file mode 100644 index 00000000..238f3197 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsExternalDocsDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsExternalDocsDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return ExternalDocumentation.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsMessageTraitsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsMessageTraitsDeserializer.java new file mode 100644 index 00000000..766c33c1 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsMessageTraitsDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.channel.message.MessageTrait; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsMessageTraitsDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return MessageTrait.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsMessagesDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsMessagesDeserializer.java new file mode 100644 index 00000000..26c6c2e6 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsMessagesDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.channel.message.Message; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsMessagesDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Message.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsOperationTraitsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsOperationTraitsDeserializer.java new file mode 100644 index 00000000..23e65e59 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsOperationTraitsDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.operation.OperationTrait; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsOperationTraitsDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return OperationTrait.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsOperationsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsOperationsDeserializer.java new file mode 100644 index 00000000..d78264e2 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsOperationsDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.operation.Operation; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsOperationsDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Operation.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsParametersDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsParametersDeserializer.java new file mode 100644 index 00000000..b35829d3 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsParametersDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.channel.Parameter; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsParametersDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Parameter.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsRepliesDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsRepliesDeserializer.java new file mode 100644 index 00000000..97f5e213 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsRepliesDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.operation.reply.OperationReply; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsRepliesDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return OperationReply.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsReplyAddressesDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsReplyAddressesDeserializer.java new file mode 100644 index 00000000..369f9154 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsReplyAddressesDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.operation.reply.OperationReplyAddress; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsReplyAddressesDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return OperationReplyAddress.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsSchemasDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsSchemasDeserializer.java new file mode 100644 index 00000000..713d49b5 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsSchemasDeserializer.java @@ -0,0 +1,95 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3.schema.MultiFormatSchema; +import com.asyncapi.v3.schema.Schema; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.ObjectCodec; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; +import com.fasterxml.jackson.databind.JsonNode; +import org.jetbrains.annotations.NotNull; + +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + +public class ComponentsSchemasDeserializer extends JsonDeserializer { + + public Class objectTypeClass() { + return Schema.class; + } + + public Class referenceClass() { + return Reference.class; + } + + @Override + public Map deserialize(JsonParser jsonParser, + DeserializationContext deserializationContext + ) throws IOException, JsonProcessingException { + ObjectCodec objectCodec = jsonParser.getCodec(); + JsonNode map = objectCodec.readTree(jsonParser); + + Map parameters = new HashMap<>(); + + map.fieldNames().forEachRemaining( + fieldName -> { + /* + Problem: + Both, Reference class and Schema class have $ref field. + So, this is only reason why I receive next exception: + "com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: + Unrecognized field "title" (class com.asyncapi.v2._6_0.model.Reference), + not marked as ignorable (one known property: "$ref"])" + in case when Schema contains $ref. + Solution: + Try to deserialize reference. In case of exception, try to deserialize it as given ObjectType. In case of + one more exception, throw it. + TODO: Think how to improve. + */ + try { + parameters.put(fieldName, chooseKnownPojo(map.get(fieldName), objectCodec)); + } catch (IOException ignore) { + try { + parameters.put(fieldName, readAsObject(map.get(fieldName), objectCodec)); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + ); + + return parameters; + } + + private Object chooseKnownPojo(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + JsonNode ref = jsonNode.get("$ref"); + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + if (isMultiFormatSchema(jsonNode)) { + return jsonParser.readValueAs(MultiFormatSchema.class); + } + + if (ref != null) { + return jsonParser.readValueAs(referenceClass()); + } else { + return jsonParser.readValueAs(objectTypeClass()); + } + } + } + + private Object readAsObject(JsonNode jsonNode, ObjectCodec objectCodec) throws IOException { + try (JsonParser jsonParser = jsonNode.traverse(objectCodec)) { + return jsonParser.readValueAs(objectTypeClass()); + } + } + + private boolean isMultiFormatSchema(@NotNull JsonNode jsonNode) { + JsonNode schemaFormat = jsonNode.get("schemaFormat"); + JsonNode schema = jsonNode.get("schema"); + + return (schemaFormat != null) && (schema != null); + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsSecuritySchemesDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsSecuritySchemesDeserializer.java new file mode 100644 index 00000000..57f0dbbd --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsSecuritySchemesDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; +import com.asyncapi.v3.security_scheme.SecurityScheme; + +public class ComponentsSecuritySchemesDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return SecurityScheme.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsServerVariablesDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsServerVariablesDeserializer.java new file mode 100644 index 00000000..2836d0df --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsServerVariablesDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.server.ServerVariable; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsServerVariablesDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return ServerVariable.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsServersDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsServersDeserializer.java new file mode 100644 index 00000000..64e77bfd --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsServersDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.server.Server; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsServersDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Server.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsTagsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsTagsDeserializer.java new file mode 100644 index 00000000..ef193b9f --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/component/ComponentsTagsDeserializer.java @@ -0,0 +1,19 @@ +package com.asyncapi.v3._0_0.jackson.model.component; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.Tag; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +public class ComponentsTagsDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Tag.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/component/Components.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/component/Components.java index 17bd82a8..c53538ac 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/component/Components.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/component/Components.java @@ -1,4 +1,293 @@ package com.asyncapi.v3._0_0.model.component; -public class Components { +import com.asyncapi.v3._0_0.jackson.model.component.*; +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.ExternalDocumentation; +import com.asyncapi.v3._0_0.model.Tag; +import com.asyncapi.v3._0_0.model.channel.Channel; +import com.asyncapi.v3._0_0.model.channel.Parameter; +import com.asyncapi.v3._0_0.model.channel.message.CorrelationId; +import com.asyncapi.v3._0_0.model.channel.message.Message; +import com.asyncapi.v3._0_0.model.channel.message.MessageTrait; +import com.asyncapi.v3._0_0.model.operation.Operation; +import com.asyncapi.v3._0_0.model.operation.OperationTrait; +import com.asyncapi.v3._0_0.model.operation.reply.OperationReply; +import com.asyncapi.v3._0_0.model.operation.reply.OperationReplyAddress; +import com.asyncapi.v3._0_0.model.server.Server; +import com.asyncapi.v3._0_0.model.server.ServerVariable; +import com.asyncapi.v3.binding.channel.ChannelBinding; +import com.asyncapi.v3.binding.message.MessageBinding; +import com.asyncapi.v3.binding.operation.OperationBinding; +import com.asyncapi.v3.binding.server.ServerBinding; +import com.asyncapi.v3.jackson.binding.channel.ChannelBindingsDeserializer; +import com.asyncapi.v3.jackson.binding.message.MessageBindingsDeserializer; +import com.asyncapi.v3.jackson.binding.operation.OperationBindingsDeserializer; +import com.asyncapi.v3.jackson.binding.server.ServerBindingsDeserializer; +import com.asyncapi.v3.schema.MultiFormatSchema; +import com.asyncapi.v3.schema.Schema; +import com.asyncapi.v3.security_scheme.SecurityScheme; +import com.asyncapi.v3.ExtendableObject; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.*; +import org.jetbrains.annotations.Nullable; + +import java.util.Map; + +/** + * Holds a set of reusable objects for different aspects of the AsyncAPI specification. + * All objects defined within the components object will have no effect on the API unless they are explicitly referenced + * from properties outside the components object. + * + * @version 3.0.0 + * @author Pavel Bodiachevskii + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class Components extends ExtendableObject { + + /** + * An object to hold reusable {@link }Schema Objects. + *

    + * MUST BE: + *

      + *
    • {@link Schema}
    • + *
    • {@link MultiFormatSchema}
    • + *
    • {@link Reference}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsSchemasDeserializer.class) + private Map schemas; + + /** + * An object to hold reusable {@link Server} Objects. + *

    + * MUST BE: + *

      + *
    • {@link Server}
    • + *
    • {@link Reference}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsServersDeserializer.class) + private Map servers; + + /** + * An object to hold reusable {@link ServerVariable} Objects. + *

    + * MUST BE: + *

      + *
    • {@link ServerVariable}
    • + *
    • {@link Reference}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsServerVariablesDeserializer.class) + private Map serverVariables; + + /** + * An object to hold reusable {@link Channel} Objects. + *

    + * MUST BE: + *

      + *
    • {@link Channel}
    • + *
    • {@link Reference}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsChannelsDeserializer.class) + private Map channels; + + /** + * An object to hold reusable {@link Operation} Objects. + *

    + * MUST BE: + *

      + *
    • {@link Operation}
    • + *
    • {@link Reference}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsOperationsDeserializer.class) + private Map operations; + + /** + * An object to hold reusable {@link OperationReply} Objects. + *

    + * MUST BE: + *

      + *
    • {@link OperationReply}
    • + *
    • {@link Reference}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsRepliesDeserializer.class) + private Map replies; + + /** + * An object to hold reusable {@link OperationReplyAddress} Objects. + *

    + * MUST BE: + *

      + *
    • {@link OperationReplyAddress}
    • + *
    • {@link Reference}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsReplyAddressesDeserializer.class) + private Map replyAddresses; + + /** + * An object to hold reusable {@link Message} Objects. + *

    + * MUST BE: + *

      + *
    • {@link Message}
    • + *
    • {@link Reference}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsMessagesDeserializer.class) + private Map messages; + + /** + * An object to hold reusable {@link SecurityScheme} Objects. + *

    + * MUST BE: + *

      + *
    • {@link SecurityScheme}
    • + *
    • {@link Reference}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsSecuritySchemesDeserializer.class) + private Map securitySchemes; + + /** + * An object to hold reusable {@link Parameter} Objects. + *

    + * MUST BE: + *

      + *
    • {@link Reference}
    • + *
    • {@link Parameter}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsParametersDeserializer.class) + private Map parameters; + + /** + * An object to hold reusable {@link CorrelationId} Objects. + *

    + * MUST BE: + *

      + *
    • {@link Reference}
    • + *
    • {@link CorrelationId}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsCorrelationIdsDeserializer.class) + private Map correlationIds; + + /** + * An object to hold reusable {@link OperationTrait} Objects. + *

    + * MUST BE: + *

      + *
    • {@link Reference}
    • + *
    • {@link OperationTrait}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsOperationTraitsDeserializer.class) + private Map operationTraits; + + /** + * An object to hold reusable {@link MessageTrait} Objects. + *

    + * MUST BE: + *

      + *
    • {@link Reference}
    • + *
    • {@link MessageTrait}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsMessageTraitsDeserializer.class) + private Map messageTraits; + + /** + * An object to hold reusable {@link ServerBinding} Objects. + * MUST BE: + *
      + *
    • {@link Reference}
    • + *
    • {@link ServerBinding}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ServerBindingsDeserializer.class) + private Map serverBindings; + + /** + * An object to hold reusable {@link ChannelBinding} Objects. + * MUST BE: + *
      + *
    • {@link Reference}
    • + *
    • {@link ChannelBinding}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ChannelBindingsDeserializer.class) + private Map channelBindings; + + /** + * An object to hold reusable {@link OperationBinding} Objects. + * MUST BE: + *
      + *
    • {@link Reference}
    • + *
    • {@link OperationBinding}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = OperationBindingsDeserializer.class) + private Map operationBindings; + + /** + * An object to hold reusable {@link MessageBinding} Objects. + * MUST BE: + *
      + *
    • {@link Reference}
    • + *
    • {@link MessageBinding}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = MessageBindingsDeserializer.class) + private Map messageBindings; + + /** + * An object to hold reusable {@link ExternalDocumentation} Objects. + * MUST BE: + *
      + *
    • {@link Reference}
    • + *
    • {@link ExternalDocumentation}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsExternalDocsDeserializer.class) + private Map externalDocs; + + /** + * An object to hold reusable {@link Tag} Objects. + * MUST BE: + *
      + *
    • {@link Reference}
    • + *
    • {@link Tag}
    • + *
    + */ + @Nullable + @JsonDeserialize(using = ComponentsTagsDeserializer.class) + private Map tags; + } diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTest.kt index 7617c281..f89217b3 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/channel/message/MessageTest.kt @@ -72,27 +72,7 @@ class MessageTestWithSchema: SerDeTest() { Tag("register", null, null), )) .externalDocs(ExternalDocumentation("User sign up rules", "messages/sign-up-rules")) - .bindings(mapOf( - Pair("amqp", AMQPMessageBindingTest().build()), - Pair("amqp1", Reference("#/components/messageBindings/amqp1")), - Pair("anypointmq", AnypointMQMessageBindingTest().build()), - Pair("googlepubsub", GooglePubSubMessageBindingTest().build()), - Pair("http", HTTPMessageBindingTest().build()), - Pair("ibmmq", IBMMQMessageBindingTest().build()), - Pair("jms", Reference("#/components/messageBindings/jms")), - Pair("kafka", KafkaMessageBindingTest().build()), - Pair("mercure", Reference("#/components/messageBindings/mercure")), - Pair("mqtt", MQTTMessageBindingTest().build()), - Pair("mqtt5", Reference("#/components/messageBindings/mqtt5")), - Pair("nats", Reference("#/components/messageBindings/nats")), - Pair("pulsar", Reference("#/components/messageBindings/pulsar")), - Pair("redis", Reference("#/components/messageBindings/redis")), - Pair("sns", Reference("#/components/messageBindings/sns")), - Pair("solace", Reference("#/components/messageBindings/solace")), - Pair("sqs", Reference("#/components/messageBindings/sqs")), - Pair("stomp", Reference("#/components/messageBindings/stomp")), - Pair("ws", Reference("#/components/messageBindings/ws")) - )) + .bindings(bindings()) .examples(listOf(MessageExampleTest().build())) .traits(listOf( MessageTraitTestWithSchema().build(), @@ -102,6 +82,32 @@ class MessageTestWithSchema: SerDeTest() { .build() } + companion object { + fun bindings(): Map { + return mapOf( + Pair("amqp", AMQPMessageBindingTest().build()), + Pair("amqp1", Reference("#/components/messageBindings/amqp1")), + Pair("anypointmq", AnypointMQMessageBindingTest().build()), + Pair("googlepubsub", GooglePubSubMessageBindingTest().build()), + Pair("http", HTTPMessageBindingTest().build()), + Pair("ibmmq", IBMMQMessageBindingTest().build()), + Pair("jms", Reference("#/components/messageBindings/jms")), + Pair("kafka", KafkaMessageBindingTest().build()), + Pair("mercure", Reference("#/components/messageBindings/mercure")), + Pair("mqtt", MQTTMessageBindingTest().build()), + Pair("mqtt5", Reference("#/components/messageBindings/mqtt5")), + Pair("nats", Reference("#/components/messageBindings/nats")), + Pair("pulsar", Reference("#/components/messageBindings/pulsar")), + Pair("redis", Reference("#/components/messageBindings/redis")), + Pair("sns", Reference("#/components/messageBindings/sns")), + Pair("solace", Reference("#/components/messageBindings/solace")), + Pair("sqs", Reference("#/components/messageBindings/sqs")), + Pair("stomp", Reference("#/components/messageBindings/stomp")), + Pair("ws", Reference("#/components/messageBindings/ws")) + ) + } + } + } class MessageTestWithReference: SerDeTest() { diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/component/ComponentsTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/component/ComponentsTest.kt new file mode 100644 index 00000000..2c42c289 --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/component/ComponentsTest.kt @@ -0,0 +1,164 @@ +package com.asyncapi.v3._0_0.model.component + +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3._0_0.model.ExternalDocumentationTest +import com.asyncapi.v3._0_0.model.TagTest +import com.asyncapi.v3._0_0.model.TagTestWithReferenceToExternalDocs +import com.asyncapi.v3._0_0.model.channel.ChannelTest +import com.asyncapi.v3._0_0.model.channel.ChannelTestWithReference +import com.asyncapi.v3._0_0.model.channel.ParameterTest +import com.asyncapi.v3._0_0.model.channel.message.* +import com.asyncapi.v3._0_0.model.operation.OperationTest +import com.asyncapi.v3._0_0.model.operation.OperationTestWithReference +import com.asyncapi.v3._0_0.model.operation.OperationTraitTest +import com.asyncapi.v3._0_0.model.operation.OperationTraitTestWithReference +import com.asyncapi.v3._0_0.model.operation.reply.OperationReplyAddressTest +import com.asyncapi.v3._0_0.model.operation.reply.OperationReplyTest +import com.asyncapi.v3._0_0.model.operation.reply.OperationReplyTestWithReference +import com.asyncapi.v3._0_0.model.server.ServerTest +import com.asyncapi.v3._0_0.model.server.ServerVariableTest +import com.asyncapi.v3.schema.MultiFormatSchema +import com.asyncapi.v3.schema.Schema +import com.asyncapi.v3.schema.Type +import com.asyncapi.v3.security_scheme.ApiKeySecuritySchemeTest +import com.asyncapi.v3.security_scheme.OpenIdConnectSecuritySchemeTest +import com.asyncapi.v3.security_scheme.http.HttpApiKeySecuritySchemeTest +import com.asyncapi.v3.security_scheme.http.HttpSecuritySchemeBasicTest +import com.asyncapi.v3.security_scheme.http.HttpSecuritySchemeBearerTest +import com.asyncapi.v3.security_scheme.oauth2.OAuth2SecuritySchemeTest + +/** + * @version 3.0-.0 + * @author Pavel Bodiachevskii + */ +class ComponentsTest: SerDeTest() { + + override fun objectClass() = Components::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/components/components.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/components/components - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/components/components - wrongly extended.json" + + override fun build(): Components { + /* + oauth2 // scopes + openIdConnect // scopes + */ + return Components.builder() + .schemas(mapOf( + Pair("Category", Schema.builder() + .type(Type.OBJECT) + .properties(mapOf( + Pair("id", Schema.builder().type(Type.INTEGER).format("int64").build()), + Pair("name", Schema.builder().type(Type.STRING).build()) + )) + .build() + ), + Pair( + "Tag", + MultiFormatSchema.builder() + .schemaFormat("application/json") + .schema(mapOf( + Pair("type", "object"), + Pair("properties", mapOf( + Pair("id", mapOf( + Pair("type", "integer"), + Pair("format", "int64") + )), + Pair("name", mapOf( + Pair("type", "string") + )) + )) + )) + .build() + ), + Pair("User", Reference("#/components/schemas/user")) + )) + .servers(mapOf( + Pair("mqtt-test", ServerTest().build()), + Pair("mqtt-stage", Reference("#/components/servers/mqtt-stage")) + )) + .serverVariables(mapOf( + Pair("port", ServerVariableTest().build()), + Pair("basePath", Reference("#/components/serverVariables/basePath")) + )) + .channels(mapOf( + Pair("channel 1", ChannelTest().build()), + Pair("channel 2", ChannelTestWithReference().build()), + Pair("channel 3", Reference("#/components/channels/channel")), + )) + .operations(mapOf( + Pair("operation 1", OperationTest().build()), + Pair("operation 2", OperationTestWithReference().build()), + Pair("operation 3", Reference("#/components/operations/operation")) + )) + .replies(mapOf( + Pair("reply 1", OperationReplyTest().build()), + Pair("reply 2", OperationReplyTestWithReference().build()), + Pair("reply 3", Reference("#/components/replies/reply")) + )) + .replyAddresses(mapOf( + Pair("reply addresses 1", OperationReplyAddressTest().build()), + Pair("reply addresses 2", Reference("#/components/replyAddresses/replyAddress")) + )) + .messages(mapOf( + Pair("message 1", MessageTestWithSchema().build()), + Pair("message 2", MessageTestWithMultiFormatSchema().build()), + Pair("message 3", MessageTestWithReference().build()), + Pair("message 4", Reference("#/components/messages/message")) + )) + .securitySchemes(mapOf( + Pair("apiKey", ApiKeySecuritySchemeTest().build()), + Pair("asymmetricEncryption", Reference("#/components/securitySchemes/asymmetricEncryption")), + Pair("gssapi", Reference("#/components/securitySchemes/gssapi")), + Pair("oauth2", OAuth2SecuritySchemeTest().build()), + Pair("openIdConnect", OpenIdConnectSecuritySchemeTest().build()), + Pair("httpApiKey", HttpApiKeySecuritySchemeTest().build()), + Pair("httpBasic", HttpSecuritySchemeBasicTest().build()), + Pair("httpBearer", HttpSecuritySchemeBearerTest().build()), + Pair("plain", Reference("#/components/securitySchemes/plain")), + Pair("scramSha256", Reference("#/components/securitySchemes/scramSha256")), + Pair("scramSha512", Reference("#/components/securitySchemes/scramSha512")), + Pair("symmetricEncryption", Reference("#/components/securitySchemes/symmetricEncryption")), + Pair("userPassword", Reference("#/components/securitySchemes/userPassword")), + Pair("X509", Reference("#/components/securitySchemes/X509")), + )) + .parameters(mapOf( + Pair("parameter 1", ParameterTest().build()), + Pair("parameter 2", Reference("#/components/parameters/parameter")) + )) + .correlationIds(mapOf( + Pair("correlationId 1", CorrelationIdTest().build()), + Pair("correlationId 2", Reference("#/correlationIds/parameters/correlationId")) + )) + .operationTraits(mapOf( + Pair("operationTrait 1", OperationTraitTest().build()), + Pair("operationTrait 2", OperationTraitTestWithReference().build()), + Pair("operationTrait 3", Reference("#/components/operationTraits/operationTrait")) + )) + .messageTraits(mapOf( + Pair("messageTrait 1", MessageTraitTestWithSchema().build()), + Pair("messageTrait 2", MessageTraitTestWithMultiFormatSchema().build()), + Pair("messageTrait 3", MessageTraitTestWithReference().build()), + Pair("messageTrait 4", Reference("#/components/messageTraits/messageTrait")) + )) + .serverBindings(ServerTest.bindings()) + .channelBindings(ChannelTest.bindings()) + .operationBindings(OperationTest.bindings()) + .messageBindings(MessageTestWithSchema.bindings()) + .externalDocs(mapOf( + Pair("externalDoc 1", ExternalDocumentationTest().build()), + Pair("externalDoc 2", Reference("#/components/externalDocs/externalDoc")), + )) + .tags(mapOf( + Pair("tag 1", TagTest().build()), + Pair("tag 2", TagTestWithReferenceToExternalDocs().build()), + Pair("tag 3", Reference("#/components/tags/tag")), + )) + .build() + } + +} diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTest.kt index 09d088c8..295ef12b 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/operation/OperationTest.kt @@ -45,27 +45,7 @@ class OperationTest: SerDeTest() { Reference("#/components/tags/tag") )) .externalDocs(ExternalDocumentation("Messages validation rules", "messages/validation-rules")) - .bindings(mapOf( - Pair("amqp", AMQPOperationBindingTest().build()), - Pair("amqp1", Reference("#/components/operationBindings/amqp1")), - Pair("anypointmq", Reference("#/components/operationBindings/anypointmq")), - Pair("googlepubsub", Reference("#/components/operationBindings/googlepubsub")), - Pair("http", HTTPOperationBindingTest().build()), - Pair("ibmmq", Reference("#/components/operationBindings/ibmmq")), - Pair("jms", Reference("#/components/operationBindings/jms")), - Pair("kafka", KafkaOperationBindingTest().build()), - Pair("mercure", Reference("#/components/operationBindings/mercure")), - Pair("mqtt", MQTTOperationBindingTest().build()), - Pair("mqtt5", Reference("#/components/operationBindings/mqtt5")), - Pair("nats", NATSOperationBindingTest().build()), - Pair("pulsar", Reference("#/components/operationBindings/pulsar")), - Pair("redis", Reference("#/components/operationBindings/redis")), - Pair("sns", Reference("#/components/operationBindings/sns")), - Pair("solace", SolaceOperationBindingTest().build()), - Pair("sqs", Reference("#/components/operationBindings/sqs")), - Pair("stomp", Reference("#/components/operationBindings/stomp")), - Pair("ws", Reference("#/components/operationBindings/ws")) - )) + .bindings(bindings()) .traits(listOf( OperationTraitTest().build(), OperationTraitTestWithReference().build(), @@ -80,6 +60,32 @@ class OperationTest: SerDeTest() { .build() } + companion object { + fun bindings(): Map { + return mapOf( + Pair("amqp", AMQPOperationBindingTest().build()), + Pair("amqp1", Reference("#/components/operationBindings/amqp1")), + Pair("anypointmq", Reference("#/components/operationBindings/anypointmq")), + Pair("googlepubsub", Reference("#/components/operationBindings/googlepubsub")), + Pair("http", HTTPOperationBindingTest().build()), + Pair("ibmmq", Reference("#/components/operationBindings/ibmmq")), + Pair("jms", Reference("#/components/operationBindings/jms")), + Pair("kafka", KafkaOperationBindingTest().build()), + Pair("mercure", Reference("#/components/operationBindings/mercure")), + Pair("mqtt", MQTTOperationBindingTest().build()), + Pair("mqtt5", Reference("#/components/operationBindings/mqtt5")), + Pair("nats", NATSOperationBindingTest().build()), + Pair("pulsar", Reference("#/components/operationBindings/pulsar")), + Pair("redis", Reference("#/components/operationBindings/redis")), + Pair("sns", Reference("#/components/operationBindings/sns")), + Pair("solace", SolaceOperationBindingTest().build()), + Pair("sqs", Reference("#/components/operationBindings/sqs")), + Pair("stomp", Reference("#/components/operationBindings/stomp")), + Pair("ws", Reference("#/components/operationBindings/ws")) + ) + } + } + } class OperationTestWithReference: SerDeTest() { diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - extended.json new file mode 100644 index 00000000..7506f77a --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - extended.json @@ -0,0 +1,21126 @@ +{ + "schemas" : { + "Category" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "id" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "integer", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : "int64", + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "name" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "Tag" : { + "schemaFormat" : "application/json", + "schema" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "name" : { + "type" : "string" + } + } + } + }, + "User" : { + "$ref" : "#/components/schemas/user" + } + }, + "servers" : { + "mqtt-test" : { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "mqtt-stage" : { + "$ref" : "#/components/servers/mqtt-stage" + } + }, + "serverVariables" : { + "port" : { + "description" : "To which port connect", + "examples" : [ "8883", "8884" ], + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "channels" : { + "channel 1" : { + "address" : "users.{userId}", + "title" : "Users channel", + "summary" : "messages about user events.", + "description" : "This channel is used to exchange messages about users signing up", + "servers" : [ { + "$ref" : "#/components/servers/1" + }, { + "$ref" : "#/components/servers/2" + }, { + "$ref" : "#/components/servers/3" + } ], + "parameters" : { + "userId" : { + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ] + }, + "userStatus" : { + "$ref" : "#/components/parameters/user-status" + } + }, + "messages" : { + "changeStatus" : { + "$ref" : "#/components/parameters/user-status" + }, + "message" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "message 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message with reference" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } + }, + "bindings" : { + "amqp" : { + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/channelBindings/amqp1" + }, + "anypointmq" : { + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "$ref" : "#/components/channelBindings/http" + }, + "ibmmq" : { + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/channelBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + } + }, + "mercure" : { + "$ref" : "#/components/channelBindings/mercure" + }, + "mqtt" : { + "$ref" : "#/components/channelBindings/mqtt" + }, + "mqtt5" : { + "$ref" : "#/components/channelBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/channelBindings/nats" + }, + "pulsar" : { + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0" + }, + "redis" : { + "$ref" : "#/components/channelBindings/redis" + }, + "sns" : { + "$ref" : "#/components/channelBindings/sns" + }, + "solace" : { + "$ref" : "#/components/channelBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/channelBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/channelBindings/stomp" + }, + "ws" : { + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + } + }, + "tags" : [ { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, { + "$ref" : "#/components/tag" + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "channel 2" : { + "address" : "users.{userId}", + "title" : "Users channel", + "summary" : "messages about user events.", + "description" : "This channel is used to exchange messages about users signing up", + "servers" : [ { + "$ref" : "#/components/servers/1" + }, { + "$ref" : "#/components/servers/2" + }, { + "$ref" : "#/components/servers/3" + } ], + "parameters" : { + "userId" : { + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ] + }, + "userStatus" : { + "$ref" : "#/components/parameters/user-status" + } + }, + "messages" : { + "changeStatus" : { + "$ref" : "#/components/parameters/user-status" + }, + "message" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "message 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message with reference" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } + }, + "bindings" : { + "amqp" : { + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/channelBindings/amqp1" + }, + "anypointmq" : { + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "$ref" : "#/components/channelBindings/http" + }, + "ibmmq" : { + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/channelBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + } + }, + "mercure" : { + "$ref" : "#/components/channelBindings/mercure" + }, + "mqtt" : { + "$ref" : "#/components/channelBindings/mqtt" + }, + "mqtt5" : { + "$ref" : "#/components/channelBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/channelBindings/nats" + }, + "pulsar" : { + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0" + }, + "redis" : { + "$ref" : "#/components/channelBindings/redis" + }, + "sns" : { + "$ref" : "#/components/channelBindings/sns" + }, + "solace" : { + "$ref" : "#/components/channelBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/channelBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/channelBindings/stomp" + }, + "ws" : { + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + } + }, + "tags" : [ { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, { + "$ref" : "#/components/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "channel 3" : { + "$ref" : "#/components/channels/channel" + } + }, + "operations" : { + "operation 1" : { + "action" : "send", + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "traits" : [ { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, { + "$ref" : "#/components/operations/trait" + } ], + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, + "operation 2" : { + "action" : "receive", + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "traits" : [ { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, { + "$ref" : "#/components/operations/trait" + } ], + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, + "operation 3" : { + "$ref" : "#/components/operations/operation" + } + }, + "replies" : { + "reply 1" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + }, + "reply 2" : { + "address" : { + "$ref" : "#/components/addresses/address" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + }, + "reply 3" : { + "$ref" : "#/components/replies/reply" + } + }, + "replyAddresses" : { + "reply addresses 1" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "reply addresses 2" : { + "$ref" : "#/components/replyAddresses/replyAddress" + } + }, + "messages" : { + "message 1" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "message 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message 3" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message 4" : { + "$ref" : "#/components/messages/message" + } + }, + "securitySchemes" : { + "apiKey" : { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, + "asymmetricEncryption" : { + "$ref" : "#/components/securitySchemes/asymmetricEncryption" + }, + "gssapi" : { + "$ref" : "#/components/securitySchemes/gssapi" + }, + "oauth2" : { + "type" : "oauth2", + "description" : "oauth2", + "flows" : { + "implicit" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "authorizationUrl" : "https://example.com/api/oauth/dialog" + }, + "password" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "tokenUrl" : "https://example.com/api/oauth/token" + }, + "clientCredentials" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "tokenUrl" : "https://example.com/api/oauth/token" + }, + "authorizationCode" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "authorizationUrl" : "https://example.com/api/oauth/dialog", + "tokenUrl" : "https://example.com/api/oauth/token" + } + }, + "scopes" : [ "write:pets", "read:pets" ] + }, + "openIdConnect" : { + "type" : "openIdConnect", + "description" : "openIdConnect", + "openIdConnectUrl" : "https://server.com/.well-known/openid-configuration", + "scopes" : [ "write:pets", "read:pets" ] + }, + "httpApiKey" : { + "type" : "httpApiKey", + "description" : "httpApiKey", + "name" : "api_key", + "in" : "header" + }, + "httpBasic" : { + "type" : "http", + "description" : "http", + "scheme" : "basic", + "bearerFormat" : null + }, + "httpBearer" : { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + }, + "plain" : { + "$ref" : "#/components/securitySchemes/plain" + }, + "scramSha256" : { + "$ref" : "#/components/securitySchemes/scramSha256" + }, + "scramSha512" : { + "$ref" : "#/components/securitySchemes/scramSha512" + }, + "symmetricEncryption" : { + "$ref" : "#/components/securitySchemes/symmetricEncryption" + }, + "userPassword" : { + "$ref" : "#/components/securitySchemes/userPassword" + }, + "X509" : { + "$ref" : "#/components/securitySchemes/X509" + } + }, + "parameters" : { + "parameter 1" : { + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ] + }, + "parameter 2" : { + "$ref" : "#/components/parameters/parameter" + } + }, + "correlationIds" : { + "correlationId 1" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "correlationId 2" : { + "$ref" : "#/correlationIds/parameters/correlationId" + } + }, + "operationTraits" : { + "operationTrait 1" : { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, + "operationTrait 2" : { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, + "operationTrait 3" : { + "$ref" : "#/components/operationTraits/operationTrait" + } + }, + "messageTraits" : { + "messageTrait 1" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "messageTrait 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "messageTrait 3" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "messageTrait 4" : { + "$ref" : "#/components/messageTraits/messageTrait" + } + }, + "serverBindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + }, + "channelBindings" : { + "amqp" : { + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/channelBindings/amqp1" + }, + "anypointmq" : { + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "$ref" : "#/components/channelBindings/http" + }, + "ibmmq" : { + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/channelBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + } + }, + "mercure" : { + "$ref" : "#/components/channelBindings/mercure" + }, + "mqtt" : { + "$ref" : "#/components/channelBindings/mqtt" + }, + "mqtt5" : { + "$ref" : "#/components/channelBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/channelBindings/nats" + }, + "pulsar" : { + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0" + }, + "redis" : { + "$ref" : "#/components/channelBindings/redis" + }, + "sns" : { + "$ref" : "#/components/channelBindings/sns" + }, + "solace" : { + "$ref" : "#/components/channelBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/channelBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/channelBindings/stomp" + }, + "ws" : { + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + } + }, + "operationBindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messageBindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "externalDocs" : { + "externalDoc 1" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "externalDoc 2" : { + "$ref" : "#/components/externalDocs/externalDoc" + } + }, + "tags" : { + "tag 1" : { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "tag 2" : { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "tag 3" : { + "$ref" : "#/components/tags/tag" + } + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - wrongly extended.json new file mode 100644 index 00000000..3ed77cdd --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - wrongly extended.json @@ -0,0 +1,8582 @@ +{ + "schemas": { + "Category": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + }, + "Tag": { + "schemaFormat": "application/json", + "schema": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + } + }, + "User": { + "$ref": "#/components/schemas/user" + } + }, + "servers": { + "mqtt-test": { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "mqtt-stage": { + "$ref": "#/components/servers/mqtt-stage" + } + }, + "serverVariables": { + "port": { + "enum": [ + "8883", + "8884" + ], + "default": "8883", + "description": "To which port connect", + "examples": [ + "8883", + "8884" + ] + }, + "basePath": { + "$ref": "#/components/serverVariables/basePath" + } + }, + "channels": { + "channel 1": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "channel 2": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "channel 3": { + "$ref": "#/components/channels/channel" + } + }, + "operations": { + "operation 1": { + "action": "send", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + "operation 2": { + "action": "receive", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + "operation 3": { + "$ref": "#/components/operations/operation" + } + }, + "replies": { + "reply 1": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + }, + "reply 2": { + "address": { + "$ref": "#/components/addresses/address" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + }, + "reply 3": { + "$ref": "#/components/replies/reply" + } + }, + "replyAddresses": { + "reply addresses 1": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "reply addresses 2": { + "$ref": "#/components/replyAddresses/replyAddress" + } + }, + "messages": { + "message 1": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 3": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 4": { + "$ref": "#/components/messages/message" + } + }, + "securitySchemes": { + "apiKey": { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + "asymmetricEncryption": { + "$ref": "#/components/securitySchemes/asymmetricEncryption" + }, + "gssapi": { + "$ref": "#/components/securitySchemes/gssapi" + }, + "oauth2": { + "type": "oauth2", + "description": "oauth2", + "flows": { + "authorizationCode": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "clientCredentials": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "implicit": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "password": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + } + }, + "scopes": [ "write:pets", "read:pets" ] + }, + "openIdConnect": { + "type": "openIdConnect", + "description": "openIdConnect", + "openIdConnectUrl": "https://server.com/.well-known/openid-configuration", + "scopes": [ + "write:pets", + "read:pets" + ] + }, + "httpApiKey": { + "type": "httpApiKey", + "description": "httpApiKey", + "name": "api_key", + "in": "header" + }, + "httpBasic": { + "type": "http", + "description": "http", + "scheme": "basic" + }, + "httpBearer": { + "type": "http", + "description": "http", + "scheme": "bearer", + "bearerFormat": "JWT" + }, + "plain": { + "$ref": "#/components/securitySchemes/plain" + }, + "scramSha256": { + "$ref": "#/components/securitySchemes/scramSha256" + }, + "scramSha512": { + "$ref": "#/components/securitySchemes/scramSha512" + }, + "symmetricEncryption": { + "$ref": "#/components/securitySchemes/symmetricEncryption" + }, + "userPassword": { + "$ref": "#/components/securitySchemes/userPassword" + }, + "X509": { + "$ref": "#/components/securitySchemes/X509" + } + }, + "parameters": { + "parameter 1": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "parameter 2": { + "$ref": "#/components/parameters/parameter" + } + }, + "correlationIds": { + "correlationId 1": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "correlationId 2": { + "$ref": "#/correlationIds/parameters/correlationId" + } + }, + "operationTraits": { + "operationTrait 1": { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + "operationTrait 2": { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + "operationTrait 3": { + "$ref": "#/components/operationTraits/operationTrait" + } + }, + "messageTraits": { + "messageTrait 1": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 3": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 4": { + "$ref": "#/components/messageTraits/messageTrait" + } + }, + "serverBindings": { + "amqp": { + "$ref": "#/components/serverBindings/amqp" + }, + "amqp1": {}, + "anypointmq": {}, + "googlepubsub": {}, + "http": {}, + "ibmmq": { + "groupId": "PRODCLSTR1", + "ccdtQueueManagerName": "*", + "multiEndpointServer": false, + "heartBeatInterval": 300, + "cipherSpec": "ANY_TLS12_OR_HIGHER", + "bindingVersion": "0.1.0" + }, + "jms": {}, + "kafka": { + "schemaRegistryUrl": "https://my-schema-registry.com", + "schemaRegistryVendor": "confluent", + "bindingVersion": "0.4.0" + }, + "mercure": {}, + "mqtt": { + "clientId": "guest", + "cleanSession": true, + "lastWill": { + "topic": "/last-wills", + "qos": 2, + "message": "Guest gone offline.", + "retain": false + }, + "keepAlive": 60, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "sessionExpiryInterval": 60, + "bindingVersion": "0.2.0" + }, + "nats": {}, + "pulsar": { + "tenant": "contoso", + "bindingVersion": "0.1.0" + }, + "redis": {}, + "sns": {}, + "solace": { + "msgVpn": "solace.private.net", + "bindingVersion": "0.3.0" + }, + "sqs": {}, + "stomp": {}, + "ws": {} + }, + "channelBindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "operationBindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messageBindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "externalDocs": { + "externalDoc 1": { + "description": "Find more info here", + "url": "https://example.com" + }, + "externalDoc 2": { + "$ref": "#/components/externalDocs/externalDoc" + } + }, + "tags": { + "tag 1": { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "tag 2": { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + "tag 3": { + "$ref": "#/components/tags/tag" + } + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components.json new file mode 100644 index 00000000..ddd25dc1 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components.json @@ -0,0 +1,8576 @@ +{ + "schemas": { + "Category": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + }, + "Tag": { + "schemaFormat": "application/json", + "schema": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + } + }, + "User": { + "$ref": "#/components/schemas/user" + } + }, + "servers": { + "mqtt-test": { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "mqtt-stage": { + "$ref": "#/components/servers/mqtt-stage" + } + }, + "serverVariables": { + "port": { + "enum": [ + "8883", + "8884" + ], + "default": "8883", + "description": "To which port connect", + "examples": [ + "8883", + "8884" + ] + }, + "basePath": { + "$ref": "#/components/serverVariables/basePath" + } + }, + "channels": { + "channel 1": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "channel 2": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "channel 3": { + "$ref": "#/components/channels/channel" + } + }, + "operations": { + "operation 1": { + "action": "send", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + "operation 2": { + "action": "receive", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + "operation 3": { + "$ref": "#/components/operations/operation" + } + }, + "replies": { + "reply 1": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + }, + "reply 2": { + "address": { + "$ref": "#/components/addresses/address" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + }, + "reply 3": { + "$ref": "#/components/replies/reply" + } + }, + "replyAddresses": { + "reply addresses 1": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "reply addresses 2": { + "$ref": "#/components/replyAddresses/replyAddress" + } + }, + "messages": { + "message 1": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 3": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 4": { + "$ref": "#/components/messages/message" + } + }, + "securitySchemes": { + "apiKey": { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + "asymmetricEncryption": { + "$ref": "#/components/securitySchemes/asymmetricEncryption" + }, + "gssapi": { + "$ref": "#/components/securitySchemes/gssapi" + }, + "oauth2": { + "type": "oauth2", + "description": "oauth2", + "flows": { + "authorizationCode": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "clientCredentials": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "implicit": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "password": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + } + }, + "scopes": [ "write:pets", "read:pets" ] + }, + "openIdConnect": { + "type": "openIdConnect", + "description": "openIdConnect", + "openIdConnectUrl": "https://server.com/.well-known/openid-configuration", + "scopes": [ + "write:pets", + "read:pets" + ] + }, + "httpApiKey": { + "type": "httpApiKey", + "description": "httpApiKey", + "name": "api_key", + "in": "header" + }, + "httpBasic": { + "type": "http", + "description": "http", + "scheme": "basic" + }, + "httpBearer": { + "type": "http", + "description": "http", + "scheme": "bearer", + "bearerFormat": "JWT" + }, + "plain": { + "$ref": "#/components/securitySchemes/plain" + }, + "scramSha256": { + "$ref": "#/components/securitySchemes/scramSha256" + }, + "scramSha512": { + "$ref": "#/components/securitySchemes/scramSha512" + }, + "symmetricEncryption": { + "$ref": "#/components/securitySchemes/symmetricEncryption" + }, + "userPassword": { + "$ref": "#/components/securitySchemes/userPassword" + }, + "X509": { + "$ref": "#/components/securitySchemes/X509" + } + }, + "parameters": { + "parameter 1": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "parameter 2": { + "$ref": "#/components/parameters/parameter" + } + }, + "correlationIds": { + "correlationId 1": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "correlationId 2": { + "$ref": "#/correlationIds/parameters/correlationId" + } + }, + "operationTraits": { + "operationTrait 1": { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + "operationTrait 2": { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + "operationTrait 3": { + "$ref": "#/components/operationTraits/operationTrait" + } + }, + "messageTraits": { + "messageTrait 1": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 3": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 4": { + "$ref": "#/components/messageTraits/messageTrait" + } + }, + "serverBindings": { + "amqp": { + "$ref": "#/components/serverBindings/amqp" + }, + "amqp1": {}, + "anypointmq": {}, + "googlepubsub": {}, + "http": {}, + "ibmmq": { + "groupId": "PRODCLSTR1", + "ccdtQueueManagerName": "*", + "multiEndpointServer": false, + "heartBeatInterval": 300, + "cipherSpec": "ANY_TLS12_OR_HIGHER", + "bindingVersion": "0.1.0" + }, + "jms": {}, + "kafka": { + "schemaRegistryUrl": "https://my-schema-registry.com", + "schemaRegistryVendor": "confluent", + "bindingVersion": "0.4.0" + }, + "mercure": {}, + "mqtt": { + "clientId": "guest", + "cleanSession": true, + "lastWill": { + "topic": "/last-wills", + "qos": 2, + "message": "Guest gone offline.", + "retain": false + }, + "keepAlive": 60, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "sessionExpiryInterval": 60, + "bindingVersion": "0.2.0" + }, + "nats": {}, + "pulsar": { + "tenant": "contoso", + "bindingVersion": "0.1.0" + }, + "redis": {}, + "sns": {}, + "solace": { + "msgVpn": "solace.private.net", + "bindingVersion": "0.3.0" + }, + "sqs": {}, + "stomp": {}, + "ws": {} + }, + "channelBindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "operationBindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messageBindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "externalDocs": { + "externalDoc 1": { + "description": "Find more info here", + "url": "https://example.com" + }, + "externalDoc 2": { + "$ref": "#/components/externalDocs/externalDoc" + } + }, + "tags": { + "tag 1": { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "tag 2": { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + "tag 3": { + "$ref": "#/components/tags/tag" + } + } +} \ No newline at end of file From 29ecb1932fbfbcb735ff1d67b78561c5ec499075 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Thu, 5 Oct 2023 02:23:15 +0400 Subject: [PATCH 49/54] feat(3.0.0): AsyncAPI test --- .../model/channel/ChannelsDeserializer.java | 24 + .../operation/OperationsDeserializer.java | 24 + .../model/server/ServersDeserializer.java | 24 + .../com/asyncapi/v3/_0_0/model/AsyncAPI.java | 33 +- .../asyncapi/v3/_0_0/model/AsyncAPITest.kt | 52 + .../v3/3.0.0/model/asyncapi - extended.json | 34127 ++++++++++++++++ .../model/asyncapi - wrongly extended.json | 13973 +++++++ .../json/v3/3.0.0/model/asyncapi.json | 13967 +++++++ 8 files changed, 62221 insertions(+), 3 deletions(-) create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/ChannelsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/OperationsDeserializer.java create mode 100644 asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/server/ServersDeserializer.java create mode 100644 asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/AsyncAPITest.kt create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - wrongly extended.json create mode 100644 asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi.json diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/ChannelsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/ChannelsDeserializer.java new file mode 100644 index 00000000..c5cc3c01 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/channel/ChannelsDeserializer.java @@ -0,0 +1,24 @@ +package com.asyncapi.v3._0_0.jackson.model.channel; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.channel.Channel; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +/** + * Serializes component channels map. + * + * @author Pavel Bodiachevskii + */ +public class ChannelsDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Channel.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/OperationsDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/OperationsDeserializer.java new file mode 100644 index 00000000..12e3b8b8 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/operation/OperationsDeserializer.java @@ -0,0 +1,24 @@ +package com.asyncapi.v3._0_0.jackson.model.operation; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.operation.Operation; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +/** + * Serializes component operations map. + * + * @author Pavel Bodiachevskii + */ +public class OperationsDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Operation.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/server/ServersDeserializer.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/server/ServersDeserializer.java new file mode 100644 index 00000000..9639ed77 --- /dev/null +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/jackson/model/server/ServersDeserializer.java @@ -0,0 +1,24 @@ +package com.asyncapi.v3._0_0.jackson.model.server; + +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.model.server.Server; +import com.asyncapi.v3.jackson.MapOfReferencesOrObjectsDeserializer; + +/** + * Serializes component servers map. + * + * @author Pavel Bodiachevskii + */ +public class ServersDeserializer extends MapOfReferencesOrObjectsDeserializer { + + @Override + public Class objectTypeClass() { + return Server.class; + } + + @Override + public Class referenceClass() { + return Reference.class; + } + +} diff --git a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java index fbb1fd1e..fdb84f26 100644 --- a/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java +++ b/asyncapi-core/src/main/java/com/asyncapi/v3/_0_0/model/AsyncAPI.java @@ -1,11 +1,16 @@ package com.asyncapi.v3._0_0.model; import com.asyncapi.v3.ExtendableObject; +import com.asyncapi.v3.Reference; +import com.asyncapi.v3._0_0.jackson.model.channel.ChannelsDeserializer; +import com.asyncapi.v3._0_0.jackson.model.operation.OperationsDeserializer; +import com.asyncapi.v3._0_0.jackson.model.server.ServersDeserializer; import com.asyncapi.v3._0_0.model.channel.Channel; import com.asyncapi.v3._0_0.model.component.Components; import com.asyncapi.v3._0_0.model.info.Info; import com.asyncapi.v3._0_0.model.operation.Operation; import com.asyncapi.v3._0_0.model.server.Server; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; import lombok.*; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -77,9 +82,17 @@ public class AsyncAPI extends ExtendableObject { /** * Provides connection details of servers. + *

    + * MUST BE: + *

      + *
    • {@link Server}
    • + *
    • {@link Reference}
    • + *
    */ @Nullable - private Map servers; + @Builder.Default + @JsonDeserialize(using = ServersDeserializer.class) + private Map servers = new HashMap<>(); /** * The available channels and messages for the API. @@ -87,17 +100,31 @@ public class AsyncAPI extends ExtendableObject { * Holds the relative paths to the individual channel and their operations. Channel paths are relative to servers. *

    * Channels are also known as "topics", "routing keys", "event types" or "paths". + *

    + * MUST BE: + *

      + *
    • {@link Channel}
    • + *
    • {@link Reference}
    • + *
    */ @Nullable @Builder.Default - private Map channels = new HashMap<>(); + @JsonDeserialize(using = ChannelsDeserializer.class) + private Map channels = new HashMap<>(); /** * The available operations for the API. + *

    + * MUST BE: + *

      + *
    • {@link Operation}
    • + *
    • {@link Reference}
    • + *
    */ @Nullable @Builder.Default - private Map operations = new HashMap<>(); + @JsonDeserialize(using = OperationsDeserializer.class) + private Map operations = new HashMap<>(); /** * An element to hold various schemas for the specification. diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/AsyncAPITest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/AsyncAPITest.kt new file mode 100644 index 00000000..080fbb0d --- /dev/null +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/_0_0/model/AsyncAPITest.kt @@ -0,0 +1,52 @@ +package com.asyncapi.v3._0_0.model + +import com.asyncapi.v3.Reference +import com.asyncapi.v3.SerDeTest +import com.asyncapi.v3._0_0.model.channel.ChannelTest +import com.asyncapi.v3._0_0.model.channel.ChannelTestWithReference +import com.asyncapi.v3._0_0.model.component.ComponentsTest +import com.asyncapi.v3._0_0.model.info.InfoTest +import com.asyncapi.v3._0_0.model.operation.OperationTest +import com.asyncapi.v3._0_0.model.operation.OperationTestWithReference +import com.asyncapi.v3._0_0.model.server.ServerTest +import com.asyncapi.v3._0_0.model.server.ServerTestWithReference + +/** + * @author Pavel Bodiachevskii + */ +class AsyncAPITest: SerDeTest() { + + override fun objectClass() = AsyncAPI::class.java + + override fun baseObjectJson() = "/json/v3/3.0.0/model/asyncapi.json" + + override fun extendedObjectJson() = "/json/v3/3.0.0/model/asyncapi - extended.json" + + override fun wronglyExtendedObjectJson() = "/json/v3/3.0.0/model/asyncapi - wrongly extended.json" + + override fun build(): AsyncAPI { + return AsyncAPI( + "3.0.0", + "https://www.asyncapi.com", + "application/json", + InfoTest().build(), + mapOf( + Pair("server 1", ServerTest().build()), + Pair("server 2", ServerTestWithReference().build()), + Pair("server 3", Reference("#/components/servers/server")) + ), + mapOf( + Pair("channel 1", ChannelTest().build()), + Pair("channel 2", ChannelTestWithReference().build()), + Pair("channel 3", Reference("#/components/channels/channel")) + ), + mapOf( + Pair("operation 1", OperationTest().build()), + Pair("operation 2", OperationTestWithReference().build()), + Pair("operation 3", Reference("#/components/operations/operation")) + ), + ComponentsTest().build() + ) + } + +} diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - extended.json new file mode 100644 index 00000000..28a553c7 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - extended.json @@ -0,0 +1,34127 @@ +{ + "asyncapi" : "3.0.0", + "id" : "https://www.asyncapi.com", + "defaultContentType" : "application/json", + "info" : { + "title" : "AsyncApi sample", + "version" : "2.0", + "description" : "short description", + "termsOfService" : "https://www.asyncapi.com/about/", + "contact" : { + "name" : "AsyncApi", + "url" : "https://www.asyncapi.com", + "email" : "java@asyncapi.com" + }, + "license" : { + "name" : "Apache License 2.0", + "url" : "http://www.apache.org/licenses/" + }, + "tags" : [ { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "servers" : { + "server 1" : { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "server 2" : { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + }, { + "$ref" : "#/components/securitySchemes/openId" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag_name" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/externalDoc" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "server 3" : { + "$ref" : "#/components/servers/server" + } + }, + "channels" : { + "channel 1" : { + "address" : "users.{userId}", + "title" : "Users channel", + "summary" : "messages about user events.", + "description" : "This channel is used to exchange messages about users signing up", + "servers" : [ { + "$ref" : "#/components/servers/1" + }, { + "$ref" : "#/components/servers/2" + }, { + "$ref" : "#/components/servers/3" + } ], + "parameters" : { + "userId" : { + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ] + }, + "userStatus" : { + "$ref" : "#/components/parameters/user-status" + } + }, + "messages" : { + "changeStatus" : { + "$ref" : "#/components/parameters/user-status" + }, + "message" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "message 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message with reference" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } + }, + "bindings" : { + "amqp" : { + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/channelBindings/amqp1" + }, + "anypointmq" : { + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "$ref" : "#/components/channelBindings/http" + }, + "ibmmq" : { + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/channelBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + } + }, + "mercure" : { + "$ref" : "#/components/channelBindings/mercure" + }, + "mqtt" : { + "$ref" : "#/components/channelBindings/mqtt" + }, + "mqtt5" : { + "$ref" : "#/components/channelBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/channelBindings/nats" + }, + "pulsar" : { + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0" + }, + "redis" : { + "$ref" : "#/components/channelBindings/redis" + }, + "sns" : { + "$ref" : "#/components/channelBindings/sns" + }, + "solace" : { + "$ref" : "#/components/channelBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/channelBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/channelBindings/stomp" + }, + "ws" : { + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + } + }, + "tags" : [ { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, { + "$ref" : "#/components/tag" + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "channel 2" : { + "address" : "users.{userId}", + "title" : "Users channel", + "summary" : "messages about user events.", + "description" : "This channel is used to exchange messages about users signing up", + "servers" : [ { + "$ref" : "#/components/servers/1" + }, { + "$ref" : "#/components/servers/2" + }, { + "$ref" : "#/components/servers/3" + } ], + "parameters" : { + "userId" : { + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ] + }, + "userStatus" : { + "$ref" : "#/components/parameters/user-status" + } + }, + "messages" : { + "changeStatus" : { + "$ref" : "#/components/parameters/user-status" + }, + "message" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "message 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message with reference" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } + }, + "bindings" : { + "amqp" : { + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/channelBindings/amqp1" + }, + "anypointmq" : { + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "$ref" : "#/components/channelBindings/http" + }, + "ibmmq" : { + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/channelBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + } + }, + "mercure" : { + "$ref" : "#/components/channelBindings/mercure" + }, + "mqtt" : { + "$ref" : "#/components/channelBindings/mqtt" + }, + "mqtt5" : { + "$ref" : "#/components/channelBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/channelBindings/nats" + }, + "pulsar" : { + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0" + }, + "redis" : { + "$ref" : "#/components/channelBindings/redis" + }, + "sns" : { + "$ref" : "#/components/channelBindings/sns" + }, + "solace" : { + "$ref" : "#/components/channelBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/channelBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/channelBindings/stomp" + }, + "ws" : { + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + } + }, + "tags" : [ { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, { + "$ref" : "#/components/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "channel 3" : { + "$ref" : "#/components/channels/channel" + } + }, + "operations" : { + "operation 1" : { + "action" : "send", + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "traits" : [ { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, { + "$ref" : "#/components/operations/trait" + } ], + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, + "operation 2" : { + "action" : "receive", + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "traits" : [ { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, { + "$ref" : "#/components/operations/trait" + } ], + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, + "operation 3" : { + "$ref" : "#/components/operations/operation" + } + }, + "components" : { + "schemas" : { + "Category" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "id" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "integer", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : "int64", + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "name" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "Tag" : { + "schemaFormat" : "application/json", + "schema" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "name" : { + "type" : "string" + } + } + } + }, + "User" : { + "$ref" : "#/components/schemas/user" + } + }, + "servers" : { + "mqtt-test" : { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "mqtt-stage" : { + "$ref" : "#/components/servers/mqtt-stage" + } + }, + "serverVariables" : { + "port" : { + "description" : "To which port connect", + "examples" : [ "8883", "8884" ], + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "channels" : { + "channel 1" : { + "address" : "users.{userId}", + "title" : "Users channel", + "summary" : "messages about user events.", + "description" : "This channel is used to exchange messages about users signing up", + "servers" : [ { + "$ref" : "#/components/servers/1" + }, { + "$ref" : "#/components/servers/2" + }, { + "$ref" : "#/components/servers/3" + } ], + "parameters" : { + "userId" : { + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ] + }, + "userStatus" : { + "$ref" : "#/components/parameters/user-status" + } + }, + "messages" : { + "changeStatus" : { + "$ref" : "#/components/parameters/user-status" + }, + "message" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "message 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message with reference" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } + }, + "bindings" : { + "amqp" : { + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/channelBindings/amqp1" + }, + "anypointmq" : { + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "$ref" : "#/components/channelBindings/http" + }, + "ibmmq" : { + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/channelBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + } + }, + "mercure" : { + "$ref" : "#/components/channelBindings/mercure" + }, + "mqtt" : { + "$ref" : "#/components/channelBindings/mqtt" + }, + "mqtt5" : { + "$ref" : "#/components/channelBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/channelBindings/nats" + }, + "pulsar" : { + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0" + }, + "redis" : { + "$ref" : "#/components/channelBindings/redis" + }, + "sns" : { + "$ref" : "#/components/channelBindings/sns" + }, + "solace" : { + "$ref" : "#/components/channelBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/channelBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/channelBindings/stomp" + }, + "ws" : { + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + } + }, + "tags" : [ { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, { + "$ref" : "#/components/tag" + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "channel 2" : { + "address" : "users.{userId}", + "title" : "Users channel", + "summary" : "messages about user events.", + "description" : "This channel is used to exchange messages about users signing up", + "servers" : [ { + "$ref" : "#/components/servers/1" + }, { + "$ref" : "#/components/servers/2" + }, { + "$ref" : "#/components/servers/3" + } ], + "parameters" : { + "userId" : { + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ] + }, + "userStatus" : { + "$ref" : "#/components/parameters/user-status" + } + }, + "messages" : { + "changeStatus" : { + "$ref" : "#/components/parameters/user-status" + }, + "message" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "message 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message with reference" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } + }, + "bindings" : { + "amqp" : { + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/channelBindings/amqp1" + }, + "anypointmq" : { + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "$ref" : "#/components/channelBindings/http" + }, + "ibmmq" : { + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/channelBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + } + }, + "mercure" : { + "$ref" : "#/components/channelBindings/mercure" + }, + "mqtt" : { + "$ref" : "#/components/channelBindings/mqtt" + }, + "mqtt5" : { + "$ref" : "#/components/channelBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/channelBindings/nats" + }, + "pulsar" : { + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0" + }, + "redis" : { + "$ref" : "#/components/channelBindings/redis" + }, + "sns" : { + "$ref" : "#/components/channelBindings/sns" + }, + "solace" : { + "$ref" : "#/components/channelBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/channelBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/channelBindings/stomp" + }, + "ws" : { + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + } + }, + "tags" : [ { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, { + "$ref" : "#/components/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "channel 3" : { + "$ref" : "#/components/channels/channel" + } + }, + "operations" : { + "operation 1" : { + "action" : "send", + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "traits" : [ { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, { + "$ref" : "#/components/operations/trait" + } ], + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, + "operation 2" : { + "action" : "receive", + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "traits" : [ { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, { + "$ref" : "#/components/operations/trait" + } ], + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, + "operation 3" : { + "$ref" : "#/components/operations/operation" + } + }, + "replies" : { + "reply 1" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + }, + "reply 2" : { + "address" : { + "$ref" : "#/components/addresses/address" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + }, + "reply 3" : { + "$ref" : "#/components/replies/reply" + } + }, + "replyAddresses" : { + "reply addresses 1" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "reply addresses 2" : { + "$ref" : "#/components/replyAddresses/replyAddress" + } + }, + "messages" : { + "message 1" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "payload" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "metric" : { + "title" : null, + "description" : "Metric set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "message 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "payload" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "metric" : { + "description" : "Metric set by application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message 3" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "payload" : { + "$ref" : "#/components/messages/message-payload" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "traits" : [ { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "message 4" : { + "$ref" : "#/components/messages/message" + } + }, + "securitySchemes" : { + "apiKey" : { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, + "asymmetricEncryption" : { + "$ref" : "#/components/securitySchemes/asymmetricEncryption" + }, + "gssapi" : { + "$ref" : "#/components/securitySchemes/gssapi" + }, + "oauth2" : { + "type" : "oauth2", + "description" : "oauth2", + "flows" : { + "implicit" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "authorizationUrl" : "https://example.com/api/oauth/dialog" + }, + "password" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "tokenUrl" : "https://example.com/api/oauth/token" + }, + "clientCredentials" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "tokenUrl" : "https://example.com/api/oauth/token" + }, + "authorizationCode" : { + "refreshUrl" : "https://example.com/api/oauth/refresh", + "scopes" : { + "write:pets" : "modify pets in your account", + "read:pets" : "read your pets" + }, + "authorizationUrl" : "https://example.com/api/oauth/dialog", + "tokenUrl" : "https://example.com/api/oauth/token" + } + }, + "scopes" : [ "write:pets", "read:pets" ] + }, + "openIdConnect" : { + "type" : "openIdConnect", + "description" : "openIdConnect", + "openIdConnectUrl" : "https://server.com/.well-known/openid-configuration", + "scopes" : [ "write:pets", "read:pets" ] + }, + "httpApiKey" : { + "type" : "httpApiKey", + "description" : "httpApiKey", + "name" : "api_key", + "in" : "header" + }, + "httpBasic" : { + "type" : "http", + "description" : "http", + "scheme" : "basic", + "bearerFormat" : null + }, + "httpBearer" : { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + }, + "plain" : { + "$ref" : "#/components/securitySchemes/plain" + }, + "scramSha256" : { + "$ref" : "#/components/securitySchemes/scramSha256" + }, + "scramSha512" : { + "$ref" : "#/components/securitySchemes/scramSha512" + }, + "symmetricEncryption" : { + "$ref" : "#/components/securitySchemes/symmetricEncryption" + }, + "userPassword" : { + "$ref" : "#/components/securitySchemes/userPassword" + }, + "X509" : { + "$ref" : "#/components/securitySchemes/X509" + } + }, + "parameters" : { + "parameter 1" : { + "description" : "Id of the user.", + "examples" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ], + "location" : "$message.payload#/user/id", + "default" : "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum" : [ "0e822ca6-5311-4d4c-b409-993a1820e689", "381f5ddc-75c6-4c21-9ec1-3919ed345be9", "70559d88-31a5-4ef2-8c34-7fbd04057ed5", "c6dc0047-a90d-4efa-95e3-a272282934e0" ] + }, + "parameter 2" : { + "$ref" : "#/components/parameters/parameter" + } + }, + "correlationIds" : { + "correlationId 1" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "correlationId 2" : { + "$ref" : "#/correlationIds/parameters/correlationId" + } + }, + "operationTraits" : { + "operationTrait 1" : { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "address" : { + "description" : "Consumer inbox", + "location" : "$message.header#/replyTo" + }, + "channel" : { + "$ref" : "#/components/channels/channel" + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ] + } + }, + "operationTrait 2" : { + "title" : "Send message operation", + "summary" : "Send message", + "description" : "Send message to remote server", + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "$ref" : "#/components/security/plain" + } ], + "tags" : [ { + "name" : "messages", + "description" : "operations with messages", + "externalDocs" : { + "description" : "Messages validation rules", + "url" : "messages/validation-rules" + } + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + }, + "bindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messages" : [ { + "$ref" : "#/components/messages/message 1" + }, { + "$ref" : "#/components/messages/message 2" + }, { + "$ref" : "#/components/messages/message 3" + } ], + "reply" : { + "$ref" : "#/components/replies/reply" + } + }, + "operationTrait 3" : { + "$ref" : "#/components/operationTraits/operationTrait" + } + }, + "messageTraits" : { + "messageTrait 1" : { + "messageId" : "userSignup", + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "applicationInstanceId" : { + "title" : null, + "description" : "Unique identifier for a given instance of the publishing application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "correlationId" : { + "description" : "Default Correlation ID", + "location" : "$message.header#/correlationId" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "User sign up rules", + "url" : "messages/sign-up-rules" + } + }, + "messageTrait 2" : { + "messageId" : "userSignup", + "headers" : { + "schemaFormat" : "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema" : { + "type" : "object", + "properties" : { + "correlationId" : { + "description" : "Correlation ID set by application", + "type" : "string" + }, + "applicationInstanceId" : { + "description" : "Unique identifier for a given instance of the publishing application", + "type" : "string" + } + } + } + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "messageTrait 3" : { + "messageId" : "userSignup", + "headers" : { + "$ref" : "#/components/messages/message-header" + }, + "correlationId" : { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType" : "application/json", + "name" : "UserSignup", + "title" : "User signup", + "summary" : "Action to sign a user up.", + "description" : "A longer description", + "bindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "examples" : [ { + "headers" : { + "correlationId" : "my-correlation-id", + "applicationInstanceId" : "myInstanceId" + }, + "payload" : { + "user" : { + "someUserKey" : "someUserValue" + }, + "signup" : { + "someSignupKey" : "someSignupValue" + } + }, + "name" : "SimpleSignup", + "summary" : "A simple UserSignup example message" + } ], + "tags" : [ { + "name" : "user", + "description" : null, + "externalDocs" : null + }, { + "name" : "signup", + "description" : null, + "externalDocs" : null + }, { + "name" : "register", + "description" : null, + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag" + } ], + "externalDocs" : { + "$ref" : "#/components/externalDocs/external-doc" + } + }, + "messageTrait 4" : { + "$ref" : "#/components/messageTraits/messageTrait" + } + }, + "serverBindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + }, + "channelBindings" : { + "amqp" : { + "is" : "routingKey", + "exchange" : { + "name" : "myExchange", + "type" : "topic", + "durable" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "queue" : { + "name" : "my-queue-name", + "durable" : true, + "exclusive" : true, + "autoDelete" : false, + "vhost" : "/" + }, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/channelBindings/amqp1" + }, + "anypointmq" : { + "destination" : "user-signup-exchg", + "destinationType" : "exchange", + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "topic" : "projects/your-project/topics/topic-proto-schema", + "labels" : null, + "messageRetentionDuration" : "86400s", + "messageStoragePolicy" : { + "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] + }, + "schemaSettings" : { + "encoding" : "binary", + "firstRevisionId" : null, + "lastRevisionId" : null, + "name" : "projects/your-project/schemas/message-proto" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "$ref" : "#/components/channelBindings/http" + }, + "ibmmq" : { + "destinationType" : "topic", + "queue" : { + "objectName" : "message", + "isPartitioned" : false, + "exclusive" : true + }, + "topic" : { + "string" : "messages", + "objectName" : "message", + "durablePermitted" : true, + "lastMsgRetained" : true + }, + "maxMsgLength" : 1024, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/channelBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "topic" : "my-specific-topic-name", + "partitions" : 20, + "replicas" : 3, + "topicConfiguration" : { + "cleanup.policy" : [ "delete", "compact" ], + "retention.ms" : 604800000, + "retention.bytes" : 1000000000, + "delete.retention.ms" : 86400000, + "max.message.bytes" : 1048588 + } + }, + "mercure" : { + "$ref" : "#/components/channelBindings/mercure" + }, + "mqtt" : { + "$ref" : "#/components/channelBindings/mqtt" + }, + "mqtt5" : { + "$ref" : "#/components/channelBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/channelBindings/nats" + }, + "pulsar" : { + "namespace" : "staging", + "persistence" : "persistent", + "compaction" : 1000, + "geo-replication" : [ "us-east1", "us-west1" ], + "retention" : { + "time" : 7, + "size" : 1000 + }, + "ttl" : 360, + "deduplication" : false, + "bindingVersion" : "0.1.0" + }, + "redis" : { + "$ref" : "#/components/channelBindings/redis" + }, + "sns" : { + "$ref" : "#/components/channelBindings/sns" + }, + "solace" : { + "$ref" : "#/components/channelBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/channelBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/channelBindings/stomp" + }, + "ws" : { + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "ref" : { + "title" : null, + "description" : "Referral.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Authentication" : { + "title" : null, + "description" : "Authentication token", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + } + }, + "operationBindings" : { + "amqp" : { + "expiration" : 100000, + "userId" : "guest", + "cc" : [ "user.logs" ], + "priority" : 10, + "deliveryMode" : 2, + "mandatory" : false, + "bcc" : [ "external.audit" ], + "replyTo" : "user.signedup", + "timestamp" : true, + "ack" : false, + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/operationBindings/amqp1" + }, + "anypointmq" : { + "$ref" : "#/components/operationBindings/anypointmq" + }, + "googlepubsub" : { + "$ref" : "#/components/operationBindings/googlepubsub" + }, + "http" : { + "type" : "request", + "method" : "GET", + "query" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : [ "companyId" ], + "properties" : { + "companyId" : { + "title" : null, + "description" : "The Id of the company.", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "number", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : 1, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : false, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "$ref" : "#/components/operationBindings/ibmmq" + }, + "jms" : { + "$ref" : "#/components/operationBindings/jms" + }, + "kafka" : { + "bindingVersion" : "0.4.0", + "groupId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myGroupId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "clientId" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myClientId" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "mercure" : { + "$ref" : "#/components/operationBindings/mercure" + }, + "mqtt" : { + "qos" : 2, + "retain" : true, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/operationBindings/mqtt5" + }, + "nats" : { + "queue" : "messages", + "bindingVersion" : "0.1.0" + }, + "pulsar" : { + "$ref" : "#/components/operationBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/operationBindings/redis" + }, + "sns" : { + "$ref" : "#/components/operationBindings/sns" + }, + "solace" : { + "destinations" : [ { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "CreatedHREvents", + "topicSubscriptions" : [ "person/*/created" ], + "accessType" : "exclusive", + "maxMsgSpoolSize" : "1,500", + "maxTtl" : "60" + }, + "topic" : null + }, { + "destinationType" : "queue", + "deliveryMode" : "persistent", + "queue" : { + "name" : "UpdatedHREvents", + "topicSubscriptions" : [ "person/*/updated" ], + "accessType" : null, + "maxMsgSpoolSize" : null, + "maxTtl" : null + }, + "topic" : { + "topicSubscriptions" : [ "person/*/updated" ] + } + } ], + "bindingVersion" : "0.3.0" + }, + "sqs" : { + "$ref" : "#/components/operationBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/operationBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/operationBindings/ws" + } + }, + "messageBindings" : { + "amqp" : { + "contentEncoding" : "gzip", + "messageType" : "user.signup", + "bindingVersion" : "0.2.0" + }, + "amqp1" : { + "$ref" : "#/components/messageBindings/amqp1" + }, + "anypointmq" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "correlationId" : { + "title" : null, + "description" : "Correlation ID set by application", + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.0.1" + }, + "googlepubsub" : { + "orderingKey" : null, + "attributes" : null, + "schema" : { + "name" : "projects/your-project/schemas/message-avro", + "type" : "avro" + }, + "bindingVersion" : "0.1.0" + }, + "http" : { + "headers" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "object", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : { + "Content-Type" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "application/json" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + } + }, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : null, + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "bindingVersion" : "0.1.0" + }, + "ibmmq" : { + "type" : "jms", + "headers" : "Content-Type: application/json", + "description" : "JMS stream message", + "expiry" : 0, + "bindingVersion" : "0.1.0" + }, + "jms" : { + "$ref" : "#/components/messageBindings/jms" + }, + "kafka" : { + "key" : { + "title" : null, + "description" : null, + "readOnly" : null, + "writeOnly" : null, + "examples" : null, + "contentEncoding" : null, + "contentMediaType" : null, + "type" : "string", + "multipleOf" : null, + "maximum" : null, + "exclusiveMaximum" : null, + "minimum" : null, + "exclusiveMinimum" : null, + "maxLength" : null, + "minLength" : null, + "pattern" : null, + "items" : null, + "additionalItems" : null, + "maxItems" : null, + "minItems" : null, + "uniqueItems" : null, + "contains" : null, + "maxProperties" : null, + "minProperties" : null, + "required" : null, + "properties" : null, + "patternProperties" : null, + "additionalProperties" : null, + "dependencies" : null, + "propertyNames" : null, + "allOf" : null, + "anyOf" : null, + "oneOf" : null, + "not" : null, + "format" : null, + "discriminator" : null, + "externalDocs" : null, + "deprecated" : null, + "default" : null, + "$ref" : null, + "enum" : [ "myKey" ], + "const" : null, + "if" : null, + "then" : null, + "else" : null + }, + "schemaIdLocation" : "payload", + "schemaIdPayloadEncoding" : "apicurio-new", + "schemaLookupStrategy" : "TopicIdStrategy", + "bindingVersion" : "0.4.0" + }, + "mercure" : { + "$ref" : "#/components/messageBindings/mercure" + }, + "mqtt" : { + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "$ref" : "#/components/messageBindings/mqtt5" + }, + "nats" : { + "$ref" : "#/components/messageBindings/nats" + }, + "pulsar" : { + "$ref" : "#/components/messageBindings/pulsar" + }, + "redis" : { + "$ref" : "#/components/messageBindings/redis" + }, + "sns" : { + "$ref" : "#/components/messageBindings/sns" + }, + "solace" : { + "$ref" : "#/components/messageBindings/solace" + }, + "sqs" : { + "$ref" : "#/components/messageBindings/sqs" + }, + "stomp" : { + "$ref" : "#/components/messageBindings/stomp" + }, + "ws" : { + "$ref" : "#/components/messageBindings/ws" + } + }, + "externalDocs" : { + "externalDoc 1" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "externalDoc 2" : { + "$ref" : "#/components/externalDocs/externalDoc" + } + }, + "tags" : { + "tag 1" : { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "tag 2" : { + "name" : "user", + "description" : "User-related messages", + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "tag 3" : { + "$ref" : "#/components/tags/tag" + } + } + }, + "x-number" : 0, + "x-string" : "", + "x-object" : { + "property" : { } + } +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - wrongly extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - wrongly extended.json new file mode 100644 index 00000000..e094a307 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - wrongly extended.json @@ -0,0 +1,13973 @@ +{ + "asyncapi": "3.0.0", + "id": "https://www.asyncapi.com", + "defaultContentType": "application/json", + "info": { + "title": "AsyncApi sample", + "version": "2.0", + "description": "short description", + "termsOfService": "https://www.asyncapi.com/about/", + "contact": { + "name": "AsyncApi", + "url": "https://www.asyncapi.com", + "email": "java@asyncapi.com" + }, + "license": { + "name": "Apache License 2.0", + "url": "http://www.apache.org/licenses/" + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + } + ], + "externalDocs": { + "description": "Find more info here", + "url": "https://example.com" + } + }, + "servers": { + "server 1": { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "server 2": { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + }, { + "$ref" : "#/components/securitySchemes/openId" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag_name" + }], + "externalDocs" : { + "$ref" : "#/components/externalDocs/externalDoc" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "server 3": { + "$ref": "#/components/servers/server" + } + }, + "channels": { + "channel 1": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "channel 2": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "channel 3": { + "$ref": "#/components/channels/channel" + } + }, + "operations": { + "operation 1": { + "action": "send", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + "operation 2": { + "action": "receive", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + "operation 3": { + "$ref": "#/components/operations/operation" + } + }, + "components": { + "schemas": { + "Category": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + }, + "Tag": { + "schemaFormat": "application/json", + "schema": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + } + }, + "User": { + "$ref": "#/components/schemas/user" + } + }, + "servers": { + "mqtt-test": { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "mqtt-stage": { + "$ref": "#/components/servers/mqtt-stage" + } + }, + "serverVariables": { + "port": { + "enum": [ + "8883", + "8884" + ], + "default": "8883", + "description": "To which port connect", + "examples": [ + "8883", + "8884" + ] + }, + "basePath": { + "$ref": "#/components/serverVariables/basePath" + } + }, + "channels": { + "channel 1": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "channel 2": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "channel 3": { + "$ref": "#/components/channels/channel" + } + }, + "operations": { + "operation 1": { + "action": "send", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + "operation 2": { + "action": "receive", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + "operation 3": { + "$ref": "#/components/operations/operation" + } + }, + "replies": { + "reply 1": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + }, + "reply 2": { + "address": { + "$ref": "#/components/addresses/address" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + }, + "reply 3": { + "$ref": "#/components/replies/reply" + } + }, + "replyAddresses": { + "reply addresses 1": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "reply addresses 2": { + "$ref": "#/components/replyAddresses/replyAddress" + } + }, + "messages": { + "message 1": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 3": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 4": { + "$ref": "#/components/messages/message" + } + }, + "securitySchemes": { + "apiKey": { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + "asymmetricEncryption": { + "$ref": "#/components/securitySchemes/asymmetricEncryption" + }, + "gssapi": { + "$ref": "#/components/securitySchemes/gssapi" + }, + "oauth2": { + "type": "oauth2", + "description": "oauth2", + "flows": { + "authorizationCode": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "clientCredentials": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "implicit": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "password": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + } + }, + "scopes": [ "write:pets", "read:pets" ] + }, + "openIdConnect": { + "type": "openIdConnect", + "description": "openIdConnect", + "openIdConnectUrl": "https://server.com/.well-known/openid-configuration", + "scopes": [ + "write:pets", + "read:pets" + ] + }, + "httpApiKey": { + "type": "httpApiKey", + "description": "httpApiKey", + "name": "api_key", + "in": "header" + }, + "httpBasic": { + "type": "http", + "description": "http", + "scheme": "basic" + }, + "httpBearer": { + "type": "http", + "description": "http", + "scheme": "bearer", + "bearerFormat": "JWT" + }, + "plain": { + "$ref": "#/components/securitySchemes/plain" + }, + "scramSha256": { + "$ref": "#/components/securitySchemes/scramSha256" + }, + "scramSha512": { + "$ref": "#/components/securitySchemes/scramSha512" + }, + "symmetricEncryption": { + "$ref": "#/components/securitySchemes/symmetricEncryption" + }, + "userPassword": { + "$ref": "#/components/securitySchemes/userPassword" + }, + "X509": { + "$ref": "#/components/securitySchemes/X509" + } + }, + "parameters": { + "parameter 1": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "parameter 2": { + "$ref": "#/components/parameters/parameter" + } + }, + "correlationIds": { + "correlationId 1": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "correlationId 2": { + "$ref": "#/correlationIds/parameters/correlationId" + } + }, + "operationTraits": { + "operationTrait 1": { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + "operationTrait 2": { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + "operationTrait 3": { + "$ref": "#/components/operationTraits/operationTrait" + } + }, + "messageTraits": { + "messageTrait 1": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 3": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 4": { + "$ref": "#/components/messageTraits/messageTrait" + } + }, + "serverBindings": { + "amqp": { + "$ref": "#/components/serverBindings/amqp" + }, + "amqp1": {}, + "anypointmq": {}, + "googlepubsub": {}, + "http": {}, + "ibmmq": { + "groupId": "PRODCLSTR1", + "ccdtQueueManagerName": "*", + "multiEndpointServer": false, + "heartBeatInterval": 300, + "cipherSpec": "ANY_TLS12_OR_HIGHER", + "bindingVersion": "0.1.0" + }, + "jms": {}, + "kafka": { + "schemaRegistryUrl": "https://my-schema-registry.com", + "schemaRegistryVendor": "confluent", + "bindingVersion": "0.4.0" + }, + "mercure": {}, + "mqtt": { + "clientId": "guest", + "cleanSession": true, + "lastWill": { + "topic": "/last-wills", + "qos": 2, + "message": "Guest gone offline.", + "retain": false + }, + "keepAlive": 60, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "sessionExpiryInterval": 60, + "bindingVersion": "0.2.0" + }, + "nats": {}, + "pulsar": { + "tenant": "contoso", + "bindingVersion": "0.1.0" + }, + "redis": {}, + "sns": {}, + "solace": { + "msgVpn": "solace.private.net", + "bindingVersion": "0.3.0" + }, + "sqs": {}, + "stomp": {}, + "ws": {} + }, + "channelBindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "operationBindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messageBindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "externalDocs": { + "externalDoc 1": { + "description": "Find more info here", + "url": "https://example.com" + }, + "externalDoc 2": { + "$ref": "#/components/externalDocs/externalDoc" + } + }, + "tags": { + "tag 1": { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "tag 2": { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + "tag 3": { + "$ref": "#/components/tags/tag" + } + } + }, + "x-number": 0, + "x-string": "", + "x-object": { + "property": {} + }, + "ext-number": 1 +} \ No newline at end of file diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi.json new file mode 100644 index 00000000..ee0257c0 --- /dev/null +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi.json @@ -0,0 +1,13967 @@ +{ + "asyncapi": "3.0.0", + "id": "https://www.asyncapi.com", + "defaultContentType": "application/json", + "info": { + "title": "AsyncApi sample", + "version": "2.0", + "description": "short description", + "termsOfService": "https://www.asyncapi.com/about/", + "contact": { + "name": "AsyncApi", + "url": "https://www.asyncapi.com", + "email": "java@asyncapi.com" + }, + "license": { + "name": "Apache License 2.0", + "url": "http://www.apache.org/licenses/" + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + } + ], + "externalDocs": { + "description": "Find more info here", + "url": "https://example.com" + } + }, + "servers": { + "server 1": { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "server 2": { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + }, { + "$ref" : "#/components/securitySchemes/openId" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + }, { + "$ref" : "#/components/tags/tag_name" + }], + "externalDocs" : { + "$ref" : "#/components/externalDocs/externalDoc" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "server 3": { + "$ref": "#/components/servers/server" + } + }, + "channels": { + "channel 1": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "channel 2": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "channel 3": { + "$ref": "#/components/channels/channel" + } + }, + "operations": { + "operation 1": { + "action": "send", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + "operation 2": { + "action": "receive", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + "operation 3": { + "$ref": "#/components/operations/operation" + } + }, + "components": { + "schemas": { + "Category": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + }, + "Tag": { + "schemaFormat": "application/json", + "schema": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + } + }, + "User": { + "$ref": "#/components/schemas/user" + } + }, + "servers": { + "mqtt-test": { + "host" : "{username}.gigantic-server.com:{port}/{basePath}", + "protocol" : "secure-mqtt", + "protocolVersion" : "5", + "pathname" : "/messages", + "description" : "The production API server", + "title" : "secure-mqtt API server", + "summary" : "API server", + "variables" : { + "username" : { + "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", + "examples" : null, + "enum" : null, + "default" : "demo" + }, + "port" : { + "description" : null, + "examples" : null, + "enum" : [ "8883", "8884" ], + "default" : "8883" + }, + "basePath" : { + "$ref" : "#/components/serverVariables/basePath" + } + }, + "security" : [ { + "type" : "apiKey", + "description" : "apiKey", + "in" : "user" + }, { + "type" : "http", + "description" : "http", + "scheme" : "bearer", + "bearerFormat" : "JWT" + } ], + "tags" : [ { + "name" : "env:staging", + "description" : "This environment is a replica of the production environment", + "externalDocs" : null + } ], + "externalDocs" : { + "description" : "Find more info here", + "url" : "https://example.com" + }, + "bindings" : { + "amqp" : { + "$ref" : "#/components/serverBindings/amqp" + }, + "amqp1" : { }, + "anypointmq" : { }, + "googlepubsub" : { }, + "http" : { }, + "ibmmq" : { + "groupId" : "PRODCLSTR1", + "ccdtQueueManagerName" : "*", + "cipherSpec" : "ANY_TLS12_OR_HIGHER", + "multiEndpointServer" : false, + "heartBeatInterval" : 300, + "bindingVersion" : "0.1.0" + }, + "jms" : { }, + "kafka" : { + "schemaRegistryUrl" : "https://my-schema-registry.com", + "schemaRegistryVendor" : "confluent", + "bindingVersion" : "0.4.0" + }, + "mercure" : { }, + "mqtt" : { + "clientId" : "guest", + "cleanSession" : true, + "lastWill" : { + "topic" : "/last-wills", + "qos" : 2, + "message" : "Guest gone offline.", + "retain" : false + }, + "keepAlive" : 60, + "bindingVersion" : "0.1.0" + }, + "mqtt5" : { + "sessionExpiryInterval" : 60, + "bindingVersion" : "0.2.0" + }, + "nats" : { }, + "pulsar" : { + "tenant" : "contoso", + "bindingVersion" : "0.1.0" + }, + "redis" : { }, + "sns" : { }, + "solace" : { + "msgVpn" : "solace.private.net", + "bindingVersion" : "0.3.0" + }, + "sqs" : { }, + "stomp" : { }, + "ws" : { } + } + }, + "mqtt-stage": { + "$ref": "#/components/servers/mqtt-stage" + } + }, + "serverVariables": { + "port": { + "enum": [ + "8883", + "8884" + ], + "default": "8883", + "description": "To which port connect", + "examples": [ + "8883", + "8884" + ] + }, + "basePath": { + "$ref": "#/components/serverVariables/basePath" + } + }, + "channels": { + "channel 1": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "channel 2": { + "address": "users.{userId}", + "title": "Users channel", + "summary": "messages about user events.", + "description": "This channel is used to exchange messages about users signing up", + "servers": [ + { "$ref": "#/components/servers/1"}, + { "$ref": "#/components/servers/2"}, + { "$ref": "#/components/servers/3"} + ], + "parameters": { + "userId": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "userStatus": { "$ref": "#/components/parameters/user-status"} + }, + "messages": { + "changeStatus": { "$ref": "#/components/parameters/user-status"}, + "message": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message with reference": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + } + }, + "bindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "tags": [ + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + { + "$ref": "#/components/tag" + } + ], + "externalDocs" : { + "$ref" : "#/components/external-doc" + } + }, + "channel 3": { + "$ref": "#/components/channels/channel" + } + }, + "operations": { + "operation 1": { + "action": "send", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + "operation 2": { + "action": "receive", + "channel": "#/components/channels/channel", + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "traits": [ + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + { + "$ref": "#/components/operations/trait" + } + ], + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + "operation 3": { + "$ref": "#/components/operations/operation" + } + }, + "replies": { + "reply 1": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + }, + "reply 2": { + "address": { + "$ref": "#/components/addresses/address" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + }, + "reply 3": { + "$ref": "#/components/replies/reply" + } + }, + "replyAddresses": { + "reply addresses 1": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "reply addresses 2": { + "$ref": "#/components/replyAddresses/replyAddress" + } + }, + "messages": { + "message 1": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "payload": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "metric": { + "description": "Metric set by application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref" : "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 3": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "payload": { + "$ref": "#/components/messages/message-payload" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ], + "traits": [ + { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + } + ] + }, + "message 4": { + "$ref": "#/components/messages/message" + } + }, + "securitySchemes": { + "apiKey": { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + "asymmetricEncryption": { + "$ref": "#/components/securitySchemes/asymmetricEncryption" + }, + "gssapi": { + "$ref": "#/components/securitySchemes/gssapi" + }, + "oauth2": { + "type": "oauth2", + "description": "oauth2", + "flows": { + "authorizationCode": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "clientCredentials": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "implicit": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "password": { + "tokenUrl": "https://example.com/api/oauth/token", + "refreshUrl": "https://example.com/api/oauth/refresh", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + } + }, + "scopes": [ "write:pets", "read:pets" ] + }, + "openIdConnect": { + "type": "openIdConnect", + "description": "openIdConnect", + "openIdConnectUrl": "https://server.com/.well-known/openid-configuration", + "scopes": [ + "write:pets", + "read:pets" + ] + }, + "httpApiKey": { + "type": "httpApiKey", + "description": "httpApiKey", + "name": "api_key", + "in": "header" + }, + "httpBasic": { + "type": "http", + "description": "http", + "scheme": "basic" + }, + "httpBearer": { + "type": "http", + "description": "http", + "scheme": "bearer", + "bearerFormat": "JWT" + }, + "plain": { + "$ref": "#/components/securitySchemes/plain" + }, + "scramSha256": { + "$ref": "#/components/securitySchemes/scramSha256" + }, + "scramSha512": { + "$ref": "#/components/securitySchemes/scramSha512" + }, + "symmetricEncryption": { + "$ref": "#/components/securitySchemes/symmetricEncryption" + }, + "userPassword": { + "$ref": "#/components/securitySchemes/userPassword" + }, + "X509": { + "$ref": "#/components/securitySchemes/X509" + } + }, + "parameters": { + "parameter 1": { + "description": "Id of the user.", + "default": "0e822ca6-5311-4d4c-b409-993a1820e689", + "enum": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "examples": [ + "0e822ca6-5311-4d4c-b409-993a1820e689", + "381f5ddc-75c6-4c21-9ec1-3919ed345be9", + "70559d88-31a5-4ef2-8c34-7fbd04057ed5", + "c6dc0047-a90d-4efa-95e3-a272282934e0" + ], + "location": "$message.payload#/user/id" + }, + "parameter 2": { + "$ref": "#/components/parameters/parameter" + } + }, + "correlationIds": { + "correlationId 1": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "correlationId 2": { + "$ref": "#/correlationIds/parameters/correlationId" + } + }, + "operationTraits": { + "operationTrait 1": { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "address": { + "description": "Consumer inbox", + "location": "$message.header#/replyTo" + }, + "channel": { + "$ref": "#/components/channels/channel" + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ] + } + }, + "operationTrait 2": { + "title": "Send message operation", + "summary": "Send message", + "description": "Send message to remote server", + "security": [ + { + "type": "apiKey", + "description": "apiKey", + "in": "user" + }, + { + "$ref": "#/components/security/plain" + } + ], + "tags": [ + { + "name": "messages", + "description": "operations with messages", + "externalDocs": { + "description": "Messages validation rules", + "url": "messages/validation-rules" + } + }, + { + "$ref": "#/components/tags/tag" + } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messages": [ + { + "$ref": "#/components/messages/message 1" + }, + { + "$ref": "#/components/messages/message 2" + }, + { + "$ref": "#/components/messages/message 3" + } + ], + "reply": { + "$ref": "#/components/replies/reply" + } + }, + "operationTrait 3": { + "$ref": "#/components/operationTraits/operationTrait" + } + }, + "messageTraits": { + "messageTrait 1": { + "messageId": "userSignup", + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" } + ], + "externalDocs": { + "description": "User sign up rules", + "url": "messages/sign-up-rules" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 2": { + "messageId": "userSignup", + "headers": { + "schemaFormat": "application/vnd.aai.asyncapi+json;version=3.0.0", + "schema": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + } + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 3": { + "messageId": "userSignup", + "headers": { + "$ref": "#/components/messages/message-header" + }, + "correlationId": { + "$ref": "#/components/messages/message-correlation-id" + }, + "contentType": "application/json", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { "name": "user" }, + { "name": "signup" }, + { "name": "register" }, + { "$ref": "#/components/tags/tag" } + ], + "externalDocs": { + "$ref": "#/components/externalDocs/external-doc" + }, + "bindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + "messageTrait 4": { + "$ref": "#/components/messageTraits/messageTrait" + } + }, + "serverBindings": { + "amqp": { + "$ref": "#/components/serverBindings/amqp" + }, + "amqp1": {}, + "anypointmq": {}, + "googlepubsub": {}, + "http": {}, + "ibmmq": { + "groupId": "PRODCLSTR1", + "ccdtQueueManagerName": "*", + "multiEndpointServer": false, + "heartBeatInterval": 300, + "cipherSpec": "ANY_TLS12_OR_HIGHER", + "bindingVersion": "0.1.0" + }, + "jms": {}, + "kafka": { + "schemaRegistryUrl": "https://my-schema-registry.com", + "schemaRegistryVendor": "confluent", + "bindingVersion": "0.4.0" + }, + "mercure": {}, + "mqtt": { + "clientId": "guest", + "cleanSession": true, + "lastWill": { + "topic": "/last-wills", + "qos": 2, + "message": "Guest gone offline.", + "retain": false + }, + "keepAlive": 60, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "sessionExpiryInterval": 60, + "bindingVersion": "0.2.0" + }, + "nats": {}, + "pulsar": { + "tenant": "contoso", + "bindingVersion": "0.1.0" + }, + "redis": {}, + "sns": {}, + "solace": { + "msgVpn": "solace.private.net", + "bindingVersion": "0.3.0" + }, + "sqs": {}, + "stomp": {}, + "ws": {} + }, + "channelBindings": { + "amqp": { + "is": "routingKey", + "queue": { + "name": "my-queue-name", + "durable": true, + "exclusive": true, + "autoDelete": false, + "vhost": "/" + }, + "exchange": { + "name": "myExchange", + "type": "topic", + "durable": true, + "autoDelete": false, + "vhost": "/" + }, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/channelBindings/amqp1" + }, + "anypointmq": { + "destination": "user-signup-exchg", + "destinationType": "exchange", + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "topic": "projects/your-project/topics/topic-proto-schema", + "messageRetentionDuration": "86400s", + "messageStoragePolicy": { + "allowedPersistenceRegions": [ + "us-central1", + "us-central2", + "us-east1", + "us-east4", + "us-east5", + "us-east7", + "us-south1", + "us-west1", + "us-west2", + "us-west3", + "us-west4" + ] + }, + "schemaSettings": { + "encoding": "binary", + "name": "projects/your-project/schemas/message-proto" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "$ref": "#/components/channelBindings/http" + }, + "ibmmq": { + "destinationType": "topic", + "queue": { + "objectName": "message", + "isPartitioned": false, + "exclusive": true + }, + "topic": { + "string": "messages", + "objectName": "message", + "durablePermitted": true, + "lastMsgRetained": true + }, + "maxMsgLength": 1024, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/channelBindings/jms" + }, + "kafka": { + "topic": "my-specific-topic-name", + "partitions": 20, + "replicas": 3, + "topicConfiguration": { + "cleanup.policy": [ + "delete", + "compact" + ], + "retention.ms": 604800000, + "retention.bytes": 1000000000, + "delete.retention.ms": 86400000, + "max.message.bytes": 1048588 + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/channelBindings/mercure" + }, + "mqtt": { + "$ref": "#/components/channelBindings/mqtt" + }, + "mqtt5": { + "$ref": "#/components/channelBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/channelBindings/nats" + }, + "pulsar": { + "namespace": "staging", + "persistence": "persistent", + "compaction": 1000, + "geo-replication": [ + "us-east1", + "us-west1" + ], + "retention": { + "time": 7, + "size": 1000 + }, + "ttl": 360, + "deduplication": false, + "bindingVersion": "0.1.0" + }, + "redis": { + "$ref": "#/components/channelBindings/redis" + }, + "sns": { + "$ref": "#/components/channelBindings/sns" + }, + "solace": { + "$ref": "#/components/channelBindings/solace" + }, + "sqs": { + "$ref": "#/components/channelBindings/sqs" + }, + "stomp": { + "$ref": "#/components/channelBindings/stomp" + }, + "ws": { + "method": "GET", + "query": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "Referral." + } + } + }, + "headers": { + "type": "object", + "properties": { + "Authentication": { + "type": "string", + "description": "Authentication token" + } + } + } + } + }, + "operationBindings": { + "amqp": { + "expiration": 100000, + "userId": "guest", + "cc": [ + "user.logs" + ], + "priority": 10, + "deliveryMode": 2, + "mandatory": false, + "bcc": [ + "external.audit" + ], + "replyTo": "user.signedup", + "timestamp": true, + "ack": false, + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/operationBindings/amqp1" + }, + "anypointmq": { + "$ref": "#/components/operationBindings/anypointmq" + }, + "googlepubsub": { + "$ref": "#/components/operationBindings/googlepubsub" + }, + "http": { + "type": "request", + "method": "GET", + "query": { + "type": "object", + "required": [ + "companyId" + ], + "properties": { + "companyId": { + "type": "number", + "minimum": 1, + "description": "The Id of the company." + } + }, + "additionalProperties": false + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "$ref": "#/components/operationBindings/ibmmq" + }, + "jms": { + "$ref": "#/components/operationBindings/jms" + }, + "kafka": { + "groupId": { + "type": "string", + "enum": [ + "myGroupId" + ] + }, + "clientId": { + "type": "string", + "enum": [ + "myClientId" + ] + }, + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/operationBindings/mercure" + }, + "mqtt": { + "qos": 2, + "retain": true, + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/operationBindings/mqtt5" + }, + "nats": { + "queue": "messages", + "bindingVersion": "0.1.0" + }, + "pulsar": { + "$ref": "#/components/operationBindings/pulsar" + }, + "redis": { + "$ref": "#/components/operationBindings/redis" + }, + "sns": { + "$ref": "#/components/operationBindings/sns" + }, + "solace": { + "destinations": [ + { + "destinationType": "queue", + "queue": { + "name": "CreatedHREvents", + "topicSubscriptions": [ + "person/*/created" + ], + "accessType": "exclusive", + "maxMsgSpoolSize": "1,500", + "maxTtl": "60" + } + }, + { + "destinationType": "queue", + "queue": { + "name": "UpdatedHREvents", + "topicSubscriptions": [ + "person/*/updated" + ] + }, + "topic": { + "topicSubscriptions": [ + "person/*/updated" + ] + } + } + ], + "bindingVersion": "0.3.0" + }, + "sqs": { + "$ref": "#/components/operationBindings/sqs" + }, + "stomp": { + "$ref": "#/components/operationBindings/stomp" + }, + "ws": { + "$ref": "#/components/operationBindings/ws" + } + }, + "messageBindings": { + "amqp": { + "contentEncoding": "gzip", + "messageType": "user.signup", + "bindingVersion": "0.2.0" + }, + "amqp1": { + "$ref": "#/components/messageBindings/amqp1" + }, + "anypointmq": { + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + } + } + }, + "bindingVersion": "0.0.1" + }, + "googlepubsub": { + "schema": { + "name": "projects/your-project/schemas/message-avro", + "type": "avro" + }, + "bindingVersion": "0.1.0" + }, + "http": { + "headers": { + "type": "object", + "properties": { + "Content-Type": { + "type": "string", + "enum": [ + "application/json" + ] + } + } + }, + "bindingVersion": "0.1.0" + }, + "ibmmq": { + "type": "jms", + "description": "JMS stream message", + "headers": "Content-Type: application/json", + "expiry": 0, + "bindingVersion": "0.1.0" + }, + "jms": { + "$ref": "#/components/messageBindings/jms" + }, + "kafka": { + "key": { + "type": "string", + "enum": [ + "myKey" + ] + }, + "schemaIdLocation": "payload", + "schemaIdPayloadEncoding": "apicurio-new", + "schemaLookupStrategy": "TopicIdStrategy", + "bindingVersion": "0.4.0" + }, + "mercure": { + "$ref": "#/components/messageBindings/mercure" + }, + "mqtt": { + "bindingVersion": "0.1.0" + }, + "mqtt5": { + "$ref": "#/components/messageBindings/mqtt5" + }, + "nats": { + "$ref": "#/components/messageBindings/nats" + }, + "pulsar": { + "$ref": "#/components/messageBindings/pulsar" + }, + "redis": { + "$ref": "#/components/messageBindings/redis" + }, + "sns": { + "$ref": "#/components/messageBindings/sns" + }, + "solace": { + "$ref": "#/components/messageBindings/solace" + }, + "sqs": { + "$ref": "#/components/messageBindings/sqs" + }, + "stomp": { + "$ref": "#/components/messageBindings/stomp" + }, + "ws": { + "$ref": "#/components/messageBindings/ws" + } + }, + "externalDocs": { + "externalDoc 1": { + "description": "Find more info here", + "url": "https://example.com" + }, + "externalDoc 2": { + "$ref": "#/components/externalDocs/externalDoc" + } + }, + "tags": { + "tag 1": { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "description" : "Find more info here", + "url" : "https://example.com" + } + }, + "tag 2": { + "name": "user", + "description": "User-related messages", + "externalDocs": { + "$ref": "#/components/external-doc" + } + }, + "tag 3": { + "$ref": "#/components/tags/tag" + } + } + } +} \ No newline at end of file From 898d915ce24ea768e6016e1739fd2ac5e030a6f7 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Thu, 5 Oct 2023 22:31:27 +0400 Subject: [PATCH 50/54] feat(3.0.0): refactor tests Don't serialize null --- .../test/kotlin/com/asyncapi/v3/SerDeTest.kt | 3 +- .../v3/3.0.0/model/asyncapi - extended.json | 22419 +--------------- .../model/channel/channel - extended.json | 3681 +-- .../channel with reference - extended.json | 3681 +-- .../channel/message/message - extended.json | 1316 +- .../channel/message/message 2 - extended.json | 1091 +- .../message with reference - extended.json | 1091 +- .../message/messageTrait - extended.json | 374 +- .../message/messageTrait 2 - extended.json | 239 +- ...essageTrait with reference - extended.json | 239 +- .../components/components - extended.json | 13933 +--------- .../model/operation/operation - extended.json | 555 +- .../operation with reference - extended.json | 555 +- .../operation/operationTrait - extended.json | 185 +- ...rationTrait with reference - extended.json | 185 +- .../3.0.0/model/server/server - extended.json | 7 +- .../server with reference - extended.json | 7 +- ...googlePubSubChannelBinding - extended.json | 3 - .../webSocketsChannelBinding - extended.json | 180 +- .../anypointMQMessageBinding - extended.json | 90 +- ...googlePubSubMessageBinding - extended.json | 2 - .../http/httpMessageBinding - extended.json | 90 +- .../kafka/kafkaMessageBinding - extended.json | 45 +- .../http/httpOperationBinding - extended.json | 87 +- .../kafkaOperationBinding - extended.json | 90 +- .../solaceOperationBinding - extended.json | 8 +- .../http/httpBasic - extended.json | 1 - 27 files changed, 1564 insertions(+), 48593 deletions(-) diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/SerDeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/SerDeTest.kt index d33c77e6..45ccc185 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v3/SerDeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v3/SerDeTest.kt @@ -1,5 +1,6 @@ package com.asyncapi.v3 +import com.fasterxml.jackson.annotation.JsonInclude import com.fasterxml.jackson.databind.JsonMappingException import com.fasterxml.jackson.databind.ObjectMapper import org.junit.jupiter.api.Assertions @@ -8,7 +9,7 @@ import org.junit.jupiter.api.Test abstract class SerDeTest { - protected val objectMapper = ObjectMapper() + protected val objectMapper = ObjectMapper().setSerializationInclusion(JsonInclude.Include.NON_NULL) protected abstract fun objectClass(): Class diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - extended.json index 28a553c7..f984dcc6 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/asyncapi - extended.json @@ -41,13 +41,9 @@ "variables" : { "username" : { "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", - "examples" : null, - "enum" : null, "default" : "demo" }, "port" : { - "description" : null, - "examples" : null, "enum" : [ "8883", "8884" ], "default" : "8883" }, @@ -67,8 +63,7 @@ } ], "tags" : [ { "name" : "env:staging", - "description" : "This environment is a replica of the production environment", - "externalDocs" : null + "description" : "This environment is a replica of the production environment" } ], "externalDocs" : { "description" : "Find more info here", @@ -140,13 +135,9 @@ "variables" : { "username" : { "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", - "examples" : null, - "enum" : null, "default" : "demo" }, "port" : { - "description" : null, - "examples" : null, "enum" : [ "8883", "8884" ], "default" : "8883" }, @@ -168,8 +159,7 @@ } ], "tags" : [ { "name" : "env:staging", - "description" : "This environment is a replica of the production environment", - "externalDocs" : null + "description" : "This environment is a replica of the production environment" }, { "$ref" : "#/components/tags/tag_name" } ], @@ -267,241 +257,26 @@ "message" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -523,105 +298,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -630,99 +317,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -738,51 +339,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -842,146 +400,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -1003,105 +432,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1110,99 +451,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1218,51 +473,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1320,17 +532,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -1360,105 +566,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1467,99 +585,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1575,51 +607,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1677,17 +666,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1731,105 +714,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1838,99 +733,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1946,51 +755,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -2048,17 +814,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -2067,17 +827,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -2133,105 +887,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -2240,99 +906,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -2348,51 +928,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -2452,146 +989,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -2613,105 +1021,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -2720,99 +1040,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -2828,51 +1062,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -2930,17 +1121,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -2970,105 +1155,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -3077,99 +1174,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -3185,51 +1196,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -3287,17 +1255,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3341,105 +1303,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -3448,99 +1322,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -3556,51 +1344,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -3658,17 +1403,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3677,17 +1416,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3722,105 +1455,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -3829,99 +1474,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -3937,51 +1496,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -4041,146 +1557,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -4202,105 +1589,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -4309,99 +1608,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -4417,51 +1630,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -4519,17 +1689,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -4559,105 +1723,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -4666,99 +1742,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -4774,51 +1764,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -4876,17 +1823,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -4930,105 +1871,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -5037,99 +1890,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -5145,51 +1912,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -5247,17 +1971,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -5266,17 +1984,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -5314,15 +2026,12 @@ }, "googlepubsub" : { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0" @@ -5405,194 +2114,22 @@ "ws" : { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" } @@ -5649,241 +2186,26 @@ "message" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -5905,105 +2227,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -6012,99 +2246,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -6120,51 +2268,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -6224,146 +2329,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -6385,105 +2361,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -6492,99 +2380,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -6600,51 +2402,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -6702,17 +2461,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -6742,105 +2495,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -6849,99 +2514,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -6957,51 +2536,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -7059,17 +2595,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -7113,105 +2643,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -7220,99 +2662,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -7328,51 +2684,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -7430,17 +2743,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -7449,17 +2756,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -7515,105 +2816,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -7622,99 +2835,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -7730,51 +2857,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -7834,146 +2918,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -7995,105 +2950,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -8102,99 +2969,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -8210,51 +2991,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -8312,17 +3050,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -8352,105 +3084,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -8459,99 +3103,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -8567,51 +3125,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -8669,17 +3184,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -8723,105 +3232,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -8830,99 +3251,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -8938,51 +3273,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -9040,17 +3332,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -9059,17 +3345,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -9104,105 +3384,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -9211,99 +3403,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -9319,51 +3425,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -9423,146 +3486,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -9584,105 +3518,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -9691,99 +3537,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -9799,51 +3559,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -9901,17 +3618,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -9941,105 +3652,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -10048,99 +3671,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -10156,51 +3693,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -10258,17 +3752,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -10312,105 +3800,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -10419,99 +3819,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -10527,51 +3841,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -10629,17 +3900,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -10648,17 +3913,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -10696,15 +3955,12 @@ }, "googlepubsub" : { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0" @@ -10787,194 +4043,22 @@ "ws" : { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" } @@ -11060,99 +4144,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -11165,98 +4166,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -11293,17 +4208,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -11373,99 +4284,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -11478,98 +4306,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -11606,17 +4348,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -11708,99 +4446,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -11813,98 +4468,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -11941,17 +4510,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -12061,99 +4626,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -12166,98 +4648,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -12294,17 +4690,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -12374,99 +4766,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -12479,98 +4788,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -12607,17 +4830,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -12709,99 +4928,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -12814,98 +4950,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -12942,17 +4992,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -13001,146 +5047,16 @@ "components" : { "schemas" : { "Category" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "id" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "integer", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : "int64", - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "format" : "int64" }, "name" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "Tag" : { "schemaFormat" : "application/json", @@ -13173,13 +5089,9 @@ "variables" : { "username" : { "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", - "examples" : null, - "enum" : null, "default" : "demo" }, "port" : { - "description" : null, - "examples" : null, "enum" : [ "8883", "8884" ], "default" : "8883" }, @@ -13199,8 +5111,7 @@ } ], "tags" : [ { "name" : "env:staging", - "description" : "This environment is a replica of the production environment", - "externalDocs" : null + "description" : "This environment is a replica of the production environment" } ], "externalDocs" : { "description" : "Find more info here", @@ -13308,241 +5219,26 @@ "message" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -13564,105 +5260,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -13671,99 +5279,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -13779,51 +5301,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -13883,146 +5362,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -14044,105 +5394,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -14151,99 +5413,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -14259,51 +5435,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -14361,17 +5494,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -14401,105 +5528,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -14508,99 +5547,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -14616,51 +5569,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -14718,17 +5628,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -14772,105 +5676,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -14879,99 +5695,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -14987,51 +5717,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -15089,17 +5776,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -15108,17 +5789,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -15174,105 +5849,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -15281,99 +5868,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -15389,51 +5890,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -15493,146 +5951,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -15654,105 +5983,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -15761,99 +6002,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -15869,51 +6024,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -15971,17 +6083,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -16011,105 +6117,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -16118,99 +6136,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -16226,51 +6158,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -16328,17 +6217,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -16382,105 +6265,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -16489,99 +6284,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -16597,51 +6306,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -16699,17 +6365,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -16718,17 +6378,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -16763,105 +6417,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -16870,99 +6436,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -16978,51 +6458,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -17082,146 +6519,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -17243,105 +6551,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -17350,99 +6570,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -17458,51 +6592,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -17560,17 +6651,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -17600,105 +6685,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -17707,99 +6704,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -17815,51 +6726,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -17917,17 +6785,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -17971,105 +6833,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -18078,99 +6852,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -18186,51 +6874,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -18288,17 +6933,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -18307,17 +6946,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -18355,15 +6988,12 @@ }, "googlepubsub" : { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0" @@ -18446,194 +7076,22 @@ "ws" : { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" } @@ -18690,241 +7148,26 @@ "message" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -18946,105 +7189,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -19053,99 +7208,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -19161,51 +7230,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -19265,146 +7291,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -19426,105 +7323,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -19533,99 +7342,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -19641,51 +7364,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -19743,17 +7423,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -19783,105 +7457,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -19890,99 +7476,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -19998,51 +7498,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -20100,17 +7557,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -20154,105 +7605,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -20261,99 +7624,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -20369,51 +7646,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -20471,17 +7705,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -20490,17 +7718,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -20556,105 +7778,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -20663,99 +7797,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -20771,51 +7819,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -20875,146 +7880,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -21036,105 +7912,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -21143,99 +7931,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -21251,51 +7953,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -21353,17 +8012,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -21393,105 +8046,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -21500,99 +8065,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -21608,51 +8087,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -21710,17 +8146,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -21764,105 +8194,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -21871,99 +8213,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -21979,51 +8235,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -22081,17 +8294,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -22100,17 +8307,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -22145,105 +8346,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -22252,99 +8365,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -22360,51 +8387,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -22464,146 +8448,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -22625,105 +8480,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -22732,99 +8499,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -22840,51 +8521,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -22942,17 +8580,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -22982,105 +8614,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -23089,99 +8633,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -23197,51 +8655,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -23299,17 +8714,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -23353,105 +8762,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -23460,99 +8781,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -23568,51 +8803,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -23670,17 +8862,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -23689,17 +8875,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -23737,15 +8917,12 @@ }, "googlepubsub" : { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0" @@ -23828,194 +9005,22 @@ "ws" : { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" } @@ -24101,99 +9106,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -24206,98 +9128,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -24334,17 +9170,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -24414,99 +9246,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -24519,98 +9268,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -24647,17 +9310,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -24749,99 +9408,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -24854,98 +9430,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -24982,17 +9472,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -25102,99 +9588,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -25207,98 +9610,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -25335,17 +9652,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -25415,99 +9728,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -25520,98 +9750,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -25648,17 +9792,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -25750,99 +9890,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -25855,98 +9912,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -25983,17 +9954,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -26088,241 +10055,26 @@ "message 1" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -26344,105 +10096,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -26451,99 +10115,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -26559,51 +10137,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -26663,146 +10198,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -26824,105 +10230,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -26931,99 +10249,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -27039,51 +10271,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -27141,17 +10330,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -27181,105 +10364,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -27288,99 +10383,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -27396,51 +10405,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -27498,17 +10464,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -27552,105 +10512,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -27659,99 +10531,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -27767,51 +10553,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -27869,17 +10612,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -27888,17 +10625,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -27954,105 +10685,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -28061,99 +10704,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -28169,51 +10726,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -28273,146 +10787,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -28434,105 +10819,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -28541,99 +10838,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -28649,51 +10860,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -28751,17 +10919,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -28791,105 +10953,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -28898,99 +10972,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -29006,51 +10994,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -29108,17 +11053,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -29162,105 +11101,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -29269,99 +11120,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -29377,51 +11142,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -29479,17 +11201,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -29498,17 +11214,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -29543,105 +11253,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -29650,99 +11272,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -29758,51 +11294,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -29862,146 +11355,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -30023,105 +11387,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -30130,99 +11406,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -30238,51 +11428,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -30340,17 +11487,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -30380,105 +11521,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -30487,99 +11540,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -30595,51 +11562,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -30697,17 +11621,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -30751,105 +11669,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -30858,99 +11688,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -30966,51 +11710,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -31068,17 +11769,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -31087,17 +11782,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -31176,8 +11865,7 @@ "httpBasic" : { "type" : "http", "description" : "http", - "scheme" : "basic", - "bearerFormat" : null + "scheme" : "basic" }, "httpBearer" : { "type" : "http", @@ -31278,99 +11966,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -31383,98 +11988,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -31511,17 +12030,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -31614,99 +12129,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -31719,98 +12151,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -31847,17 +12193,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -31894,146 +12236,17 @@ "messageTrait 1" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -32055,105 +12268,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -32162,99 +12287,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -32270,51 +12309,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -32372,17 +12368,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -32426,105 +12416,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -32533,99 +12435,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -32641,51 +12457,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -32743,17 +12516,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -32785,105 +12552,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -32892,99 +12571,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -33000,51 +12593,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -33102,17 +12652,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -33207,15 +12751,12 @@ }, "googlepubsub" : { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0" @@ -33298,194 +12839,22 @@ "ws" : { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" } @@ -33517,99 +12886,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -33622,98 +12908,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -33750,17 +12950,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -33789,105 +12985,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -33896,99 +13004,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -34004,51 +13026,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - extended.json index 8e6e9957..72243656 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel - extended.json @@ -29,241 +29,26 @@ "message" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -285,105 +70,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -392,99 +89,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -500,51 +111,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -604,146 +172,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -765,105 +204,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -872,99 +223,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -980,51 +245,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1082,17 +304,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -1122,105 +338,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1229,99 +357,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1337,51 +379,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1439,17 +438,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1493,105 +486,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1600,99 +505,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1708,51 +527,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1810,17 +586,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1829,17 +599,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -1895,105 +659,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -2002,99 +678,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -2110,51 +700,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -2214,146 +761,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -2375,105 +793,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -2482,99 +812,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -2590,51 +834,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -2692,17 +893,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -2732,105 +927,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -2839,99 +946,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -2947,51 +968,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -3049,17 +1027,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3103,105 +1075,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -3210,99 +1094,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -3318,51 +1116,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -3420,17 +1175,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3439,17 +1188,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3484,105 +1227,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -3591,99 +1246,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -3699,51 +1268,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -3803,146 +1329,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -3964,105 +1361,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -4071,99 +1380,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -4179,51 +1402,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -4281,17 +1461,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -4321,105 +1495,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -4428,99 +1514,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -4536,51 +1536,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -4638,17 +1595,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -4692,105 +1643,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -4799,99 +1662,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -4907,51 +1684,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -5009,17 +1743,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -5028,17 +1756,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -5076,15 +1798,12 @@ }, "googlepubsub" : { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0" @@ -5167,194 +1886,22 @@ "ws" : { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" } diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - extended.json index c41a9270..dcc4605f 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/channel with reference - extended.json @@ -29,241 +29,26 @@ "message" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -285,105 +70,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -392,99 +89,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -500,51 +111,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -604,146 +172,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -765,105 +204,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -872,99 +223,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -980,51 +245,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1082,17 +304,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -1122,105 +338,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1229,99 +357,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1337,51 +379,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1439,17 +438,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1493,105 +486,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1600,99 +505,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1708,51 +527,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1810,17 +586,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1829,17 +599,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -1895,105 +659,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -2002,99 +678,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -2110,51 +700,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -2214,146 +761,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -2375,105 +793,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -2482,99 +812,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -2590,51 +834,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -2692,17 +893,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -2732,105 +927,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -2839,99 +946,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -2947,51 +968,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -3049,17 +1027,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3103,105 +1075,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -3210,99 +1094,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -3318,51 +1116,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -3420,17 +1175,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3439,17 +1188,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3484,105 +1227,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -3591,99 +1246,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -3699,51 +1268,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -3803,146 +1329,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -3964,105 +1361,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -4071,99 +1380,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -4179,51 +1402,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -4281,17 +1461,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -4321,105 +1495,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -4428,99 +1514,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -4536,51 +1536,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -4638,17 +1595,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -4692,105 +1643,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -4799,99 +1662,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -4907,51 +1684,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -5009,17 +1743,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -5028,17 +1756,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -5076,15 +1798,12 @@ }, "googlepubsub" : { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0" @@ -5167,194 +1886,22 @@ "ws" : { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" } diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - extended.json index 89842f35..18ef0098 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message - extended.json @@ -1,241 +1,26 @@ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -257,105 +42,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -364,99 +61,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -472,51 +83,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -576,146 +144,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -737,105 +176,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -844,99 +195,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -952,51 +217,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1054,17 +276,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -1094,105 +310,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1201,99 +329,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1309,51 +351,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1411,17 +410,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1465,105 +458,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1572,99 +477,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1680,51 +499,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1782,17 +558,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1801,17 +571,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - extended.json index c59e5593..d671c764 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message 2 - extended.json @@ -47,105 +47,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -154,99 +66,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -262,51 +88,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -366,146 +149,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -527,105 +181,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -634,99 +200,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -742,51 +222,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -844,17 +281,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -884,105 +315,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -991,99 +334,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1099,51 +356,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1201,17 +415,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1255,105 +463,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1362,99 +482,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1470,51 +504,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1572,17 +563,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1591,17 +576,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - extended.json index c0ad7e10..b5b5f5fc 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/message with reference - extended.json @@ -25,105 +25,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -132,99 +44,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -240,51 +66,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -344,146 +127,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -505,105 +159,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -612,99 +178,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -720,51 +200,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -822,17 +259,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -862,105 +293,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -969,99 +312,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1077,51 +334,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1179,17 +393,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1233,105 +441,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1340,99 +460,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1448,51 +482,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1550,17 +541,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1569,17 +554,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - extended.json index b16b6674..02ac4644 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait - extended.json @@ -1,146 +1,17 @@ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -162,105 +33,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -269,99 +52,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -377,51 +74,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -479,17 +133,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - extended.json index fa5202ce..6a154c25 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait 2 - extended.json @@ -35,105 +35,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -142,99 +54,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -250,51 +76,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -352,17 +135,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - extended.json index c72450c7..388e54f6 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/channel/message/messageTrait with reference - extended.json @@ -22,105 +22,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -129,99 +41,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -237,51 +63,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -339,17 +122,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - extended.json index 7506f77a..16d5e98c 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/components/components - extended.json @@ -1,146 +1,16 @@ { "schemas" : { "Category" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "id" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "integer", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : "int64", - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "format" : "int64" }, "name" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "Tag" : { "schemaFormat" : "application/json", @@ -173,13 +43,9 @@ "variables" : { "username" : { "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", - "examples" : null, - "enum" : null, "default" : "demo" }, "port" : { - "description" : null, - "examples" : null, "enum" : [ "8883", "8884" ], "default" : "8883" }, @@ -199,8 +65,7 @@ } ], "tags" : [ { "name" : "env:staging", - "description" : "This environment is a replica of the production environment", - "externalDocs" : null + "description" : "This environment is a replica of the production environment" } ], "externalDocs" : { "description" : "Find more info here", @@ -308,241 +173,26 @@ "message" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -564,105 +214,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -671,99 +233,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -779,51 +255,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -883,146 +316,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -1044,105 +348,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1151,99 +367,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1259,51 +389,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1361,17 +448,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -1401,105 +482,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1508,99 +501,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1616,51 +523,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -1718,17 +582,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -1772,105 +630,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -1879,99 +649,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -1987,51 +671,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -2089,17 +730,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -2108,17 +743,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -2174,105 +803,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -2281,99 +822,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -2389,51 +844,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -2493,146 +905,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -2654,105 +937,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -2761,99 +956,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -2869,51 +978,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -2971,17 +1037,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -3011,105 +1071,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -3118,99 +1090,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -3226,51 +1112,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -3328,17 +1171,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3382,105 +1219,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -3489,99 +1238,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -3597,51 +1260,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -3699,17 +1319,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3718,17 +1332,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -3763,105 +1371,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -3870,99 +1390,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -3978,51 +1412,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -4082,146 +1473,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -4243,105 +1505,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -4350,99 +1524,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -4458,51 +1546,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -4560,17 +1605,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -4600,105 +1639,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -4707,99 +1658,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -4815,51 +1680,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -4917,17 +1739,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -4971,105 +1787,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -5078,99 +1806,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -5186,51 +1828,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -5288,17 +1887,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -5307,17 +1900,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -5355,15 +1942,12 @@ }, "googlepubsub" : { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0" @@ -5446,194 +2030,22 @@ "ws" : { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" } @@ -5690,241 +2102,26 @@ "message" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -5946,105 +2143,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -6053,99 +2162,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -6161,51 +2184,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -6265,146 +2245,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -6426,105 +2277,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -6533,99 +2296,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -6641,51 +2318,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -6743,17 +2377,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -6783,105 +2411,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -6890,99 +2430,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -6998,51 +2452,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -7100,17 +2511,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -7154,105 +2559,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -7261,99 +2578,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -7369,51 +2600,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -7471,17 +2659,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -7490,17 +2672,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -7556,105 +2732,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -7663,99 +2751,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -7771,51 +2773,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -7875,146 +2834,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -8036,105 +2866,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -8143,99 +2885,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -8251,51 +2907,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -8353,17 +2966,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -8393,105 +3000,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -8500,99 +3019,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -8608,51 +3041,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -8710,17 +3100,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -8764,105 +3148,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -8871,99 +3167,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -8979,51 +3189,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -9081,17 +3248,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -9100,17 +3261,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -9145,105 +3300,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -9252,99 +3319,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -9360,51 +3341,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -9464,146 +3402,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -9625,105 +3434,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -9732,99 +3453,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -9840,51 +3475,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -9942,17 +3534,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -9982,105 +3568,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -10089,99 +3587,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -10197,51 +3609,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -10299,17 +3668,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -10353,105 +3716,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -10460,99 +3735,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -10568,51 +3757,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -10670,17 +3816,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -10689,17 +3829,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -10737,15 +3871,12 @@ }, "googlepubsub" : { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0" @@ -10828,194 +3959,22 @@ "ws" : { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" } @@ -11101,99 +4060,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -11206,98 +4082,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -11334,17 +4124,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -11414,99 +4200,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -11519,98 +4222,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -11647,17 +4264,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -11749,99 +4362,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -11854,98 +4384,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -11982,17 +4426,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -12102,99 +4542,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -12207,98 +4564,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -12335,17 +4606,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -12415,99 +4682,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -12520,98 +4704,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -12648,17 +4746,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -12750,99 +4844,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -12855,98 +4866,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -12983,17 +4908,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -13088,241 +5009,26 @@ "message 1" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "payload" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "metric" : { - "title" : null, "description" : "Metric set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -13344,105 +5050,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -13451,99 +5069,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -13559,51 +5091,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -13663,146 +5152,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -13824,105 +5184,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -13931,99 +5203,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -14039,51 +5225,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -14141,17 +5284,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -14181,105 +5318,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -14288,99 +5337,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -14396,51 +5359,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -14498,17 +5418,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -14552,105 +5466,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -14659,99 +5485,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -14767,51 +5507,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -14869,17 +5566,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -14888,17 +5579,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -14954,105 +5639,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -15061,99 +5658,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -15169,51 +5680,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -15273,146 +5741,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -15434,105 +5773,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -15541,99 +5792,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -15649,51 +5814,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -15751,17 +5873,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -15791,105 +5907,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -15898,99 +5926,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -16006,51 +5948,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -16108,17 +6007,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -16162,105 +6055,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -16269,99 +6074,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -16377,51 +6096,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -16479,17 +6155,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -16498,17 +6168,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -16543,105 +6207,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -16650,99 +6226,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -16758,51 +6248,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -16862,146 +6309,17 @@ "traits" : [ { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -17023,105 +6341,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -17130,99 +6360,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -17238,51 +6382,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -17340,17 +6441,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -17380,105 +6475,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -17487,99 +6494,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -17595,51 +6516,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -17697,17 +6575,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -17751,105 +6623,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -17858,99 +6642,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -17966,51 +6664,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -18068,17 +6723,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -18087,17 +6736,11 @@ } } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -18176,8 +6819,7 @@ "httpBasic" : { "type" : "http", "description" : "http", - "scheme" : "basic", - "bearerFormat" : null + "scheme" : "basic" }, "httpBearer" : { "type" : "http", @@ -18278,99 +6920,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -18383,98 +6942,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -18511,17 +6984,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -18614,99 +7083,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -18719,98 +7105,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -18847,17 +7147,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -18894,146 +7190,17 @@ "messageTrait 1" : { "messageId" : "userSignup", "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" }, "applicationInstanceId" : { - "title" : null, "description" : "Unique identifier for a given instance of the publishing application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "correlationId" : { "description" : "Default Correlation ID", @@ -19055,105 +7222,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -19162,99 +7241,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -19270,51 +7263,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -19372,17 +7322,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" } ], "externalDocs" : { "description" : "User sign up rules", @@ -19426,105 +7370,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -19533,99 +7389,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -19641,51 +7411,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -19743,17 +7470,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -19785,105 +7506,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -19892,99 +7525,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -20000,51 +7547,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", @@ -20102,17 +7606,11 @@ "summary" : "A simple UserSignup example message" } ], "tags" : [ { - "name" : "user", - "description" : null, - "externalDocs" : null + "name" : "user" }, { - "name" : "signup", - "description" : null, - "externalDocs" : null + "name" : "signup" }, { - "name" : "register", - "description" : null, - "externalDocs" : null + "name" : "register" }, { "$ref" : "#/components/tags/tag" } ], @@ -20207,15 +7705,12 @@ }, "googlepubsub" : { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0" @@ -20298,194 +7793,22 @@ "ws" : { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" } @@ -20517,99 +7840,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -20622,98 +7862,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -20750,17 +7904,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -20789,105 +7939,17 @@ }, "anypointmq" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1" }, "googlepubsub" : { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" @@ -20896,99 +7958,13 @@ }, "http" : { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0" }, @@ -21004,51 +7980,8 @@ }, "kafka" : { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - extended.json index 9e457c60..e4b609b1 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation - extended.json @@ -54,99 +54,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -159,98 +76,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -287,17 +118,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -367,99 +194,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -472,98 +216,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -600,17 +258,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -702,99 +356,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -807,98 +378,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -935,17 +420,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - extended.json index ea23f270..f5914284 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operation with reference - extended.json @@ -53,99 +53,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -158,98 +75,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -286,17 +117,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -366,99 +193,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -471,98 +215,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -599,17 +257,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] @@ -701,99 +355,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -806,98 +377,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -934,17 +419,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - extended.json index b91314eb..5984c9c4 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait - extended.json @@ -50,99 +50,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -155,98 +72,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -283,17 +114,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - extended.json index 57099242..abb0d7a6 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/operation/operationTrait with reference - extended.json @@ -49,99 +49,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0" }, @@ -154,98 +71,12 @@ "kafka" : { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] } }, "mercure" : { @@ -282,17 +113,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - extended.json index 7857d6b2..8345f9cf 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server - extended.json @@ -9,13 +9,9 @@ "variables" : { "username" : { "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", - "examples" : null, - "enum" : null, "default" : "demo" }, "port" : { - "description" : null, - "examples" : null, "enum" : [ "8883", "8884" ], "default" : "8883" }, @@ -35,8 +31,7 @@ } ], "tags" : [ { "name" : "env:staging", - "description" : "This environment is a replica of the production environment", - "externalDocs" : null + "description" : "This environment is a replica of the production environment" } ], "externalDocs" : { "description" : "Find more info here", diff --git a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - extended.json b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - extended.json index 14969aaa..544037d4 100644 --- a/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/3.0.0/model/server/server with reference - extended.json @@ -9,13 +9,9 @@ "variables" : { "username" : { "description" : "This value is assigned by the service provider, in this example `gigantic-server.com`", - "examples" : null, - "enum" : null, "default" : "demo" }, "port" : { - "description" : null, - "examples" : null, "enum" : [ "8883", "8884" ], "default" : "8883" }, @@ -37,8 +33,7 @@ } ], "tags" : [ { "name" : "env:staging", - "description" : "This environment is a replica of the production environment", - "externalDocs" : null + "description" : "This environment is a replica of the production environment" }, { "$ref" : "#/components/tags/tag_name" } ], diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json index 560f8293..2d00b527 100644 --- a/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json @@ -1,14 +1,11 @@ { "topic" : "projects/your-project/topics/topic-proto-schema", - "labels" : null, "messageRetentionDuration" : "86400s", "messageStoragePolicy" : { "allowedPersistenceRegions" : [ "us-central1", "us-central2", "us-east1", "us-east4", "us-east5", "us-east7", "us-south1", "us-west1", "us-west2", "us-west3", "us-west4" ] }, "schemaSettings" : { "encoding" : "binary", - "firstRevisionId" : null, - "lastRevisionId" : null, "name" : "projects/your-project/schemas/message-proto" }, "bindingVersion" : "0.1.0", diff --git a/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - extended.json index 022ca87a..f0c5c5dc 100644 --- a/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/binding/channel/ws/webSocketsChannelBinding - extended.json @@ -1,194 +1,22 @@ { "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "ref" : { - "title" : null, "description" : "Referral.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Authentication" : { - "title" : null, "description" : "Authentication token", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0", "x-number" : 0, diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - extended.json index 32f0633d..35dee45d 100644 --- a/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/anypointmq/anypointMQMessageBinding - extended.json @@ -1,98 +1,12 @@ { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "correlationId" : { - "title" : null, "description" : "Correlation ID set by application", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, - "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "type" : "string" } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.0.1", "x-number" : 0, diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json index ba8ea89d..e0d383d4 100644 --- a/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json @@ -1,6 +1,4 @@ { - "orderingKey" : null, - "attributes" : null, "schema" : { "name" : "projects/your-project/schemas/message-avro", "type" : "avro" diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - extended.json index 506a4b29..436e5391 100644 --- a/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/http/httpMessageBinding - extended.json @@ -1,98 +1,12 @@ { "headers" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, "properties" : { "Content-Type" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "application/json" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "application/json" ] } - }, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + } }, "bindingVersion" : "0.1.0", "x-number" : 0, diff --git a/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - extended.json index 8a8f68ce..380a3d0c 100644 --- a/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/binding/message/kafka/kafkaMessageBinding - extended.json @@ -1,50 +1,7 @@ { "key" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myKey" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myKey" ] }, "schemaIdLocation" : "payload", "schemaIdPayloadEncoding" : "apicurio-new", diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - extended.json index d114cb25..70152613 100644 --- a/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/http/httpOperationBinding - extended.json @@ -2,99 +2,16 @@ "type" : "request", "method" : "GET", "query" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "object", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, "required" : [ "companyId" ], "properties" : { "companyId" : { - "title" : null, "description" : "The Id of the company.", - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "number", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : 1, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "minimum" : 1 } }, - "patternProperties" : null, - "additionalProperties" : false, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : null, - "const" : null, - "if" : null, - "then" : null, - "else" : null + "additionalProperties" : false }, "bindingVersion" : "0.1.0", "x-number" : 0, diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - extended.json index 9dbacd7c..c86580a4 100644 --- a/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/kafka/kafkaOperationBinding - extended.json @@ -1,98 +1,12 @@ { "bindingVersion" : "0.4.0", "groupId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myGroupId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myGroupId" ] }, "clientId" : { - "title" : null, - "description" : null, - "readOnly" : null, - "writeOnly" : null, - "examples" : null, - "contentEncoding" : null, - "contentMediaType" : null, "type" : "string", - "multipleOf" : null, - "maximum" : null, - "exclusiveMaximum" : null, - "minimum" : null, - "exclusiveMinimum" : null, - "maxLength" : null, - "minLength" : null, - "pattern" : null, - "items" : null, - "additionalItems" : null, - "maxItems" : null, - "minItems" : null, - "uniqueItems" : null, - "contains" : null, - "maxProperties" : null, - "minProperties" : null, - "required" : null, - "properties" : null, - "patternProperties" : null, - "additionalProperties" : null, - "dependencies" : null, - "propertyNames" : null, - "allOf" : null, - "anyOf" : null, - "oneOf" : null, - "not" : null, - "format" : null, - "discriminator" : null, - "externalDocs" : null, - "deprecated" : null, - "default" : null, - "$ref" : null, - "enum" : [ "myClientId" ], - "const" : null, - "if" : null, - "then" : null, - "else" : null + "enum" : [ "myClientId" ] }, "x-number" : 0, "x-string" : "", diff --git a/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - extended.json index e8a8ed88..97da1987 100644 --- a/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/binding/operation/solace/solaceOperationBinding - extended.json @@ -8,17 +8,13 @@ "accessType" : "exclusive", "maxMsgSpoolSize" : "1,500", "maxTtl" : "60" - }, - "topic" : null + } }, { "destinationType" : "queue", "deliveryMode" : "persistent", "queue" : { "name" : "UpdatedHREvents", - "topicSubscriptions" : [ "person/*/updated" ], - "accessType" : null, - "maxMsgSpoolSize" : null, - "maxTtl" : null + "topicSubscriptions" : [ "person/*/updated" ] }, "topic" : { "topicSubscriptions" : [ "person/*/updated" ] diff --git a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - extended.json b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - extended.json index f41e4c2c..5477e747 100644 --- a/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - extended.json +++ b/asyncapi-core/src/test/resources/json/v3/security_scheme/http/httpBasic - extended.json @@ -2,7 +2,6 @@ "type" : "http", "description" : "http", "scheme" : "basic", - "bearerFormat" : null, "x-number" : 0, "x-string" : "", "x-object" : { From bd0b8e9c6edc7a9daf04b7a458a57c17ccd83ef1 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Thu, 5 Oct 2023 23:41:29 +0400 Subject: [PATCH 51/54] refactor(tests): new location for security_scheme test resources --- .../v2/security_scheme/ApiKeySecuritySchemeTest.kt | 6 +++--- .../AsymmetricEncryptionSecuritySchemeTest.kt | 6 +++--- .../v2/security_scheme/GssapiSecuritySchemeTest.kt | 6 +++--- .../OpenIdConnectSecuritySchemeTest.kt | 6 +++--- .../v2/security_scheme/PlainSecuritySchemeTest.kt | 6 +++--- .../security_scheme/ScramSha256SecuritySchemeTest.kt | 6 +++--- .../security_scheme/ScramSha512SecuritySchemeTest.kt | 6 +++--- .../SymmetricEncryptionSecuritySchemeTest.kt | 6 +++--- .../UserPasswordSecuritySchemeTest.kt | 6 +++--- .../v2/security_scheme/X509SecuritySchemeTest.kt | 6 +++--- .../http/HttpApiKeySecuritySchemeTest.kt | 6 +++--- .../security_scheme/http/HttpSecuritySchemeTest.kt | 12 ++++++------ .../oauth2/OAuth2SecuritySchemeTest.kt | 6 +++--- .../v2/security_scheme/oauth2/OAuthFlowTest.kt | 6 +++--- .../oauth2/flow/AuthorizationCodeOAuthFlowTest.kt | 6 +++--- .../oauth2/flow/ClientCredentialsOAuthFlowTest.kt | 6 +++--- .../oauth2/flow/ImplicitOAuthFlowTest.kt | 6 +++--- .../v2/security_scheme/oauth2/flow/OAuthFlowTest.kt | 6 +++--- .../oauth2/flow/PasswordOAuthFlowTest.kt | 6 +++--- .../{ => v2}/security_scheme/X509 - extended.json | 0 .../security_scheme/X509 - wrongly extended.json | 0 .../json/{ => v2}/security_scheme/X509.json | 0 .../{ => v2}/security_scheme/apiKey - extended.json | 0 .../security_scheme/apiKey - wrongly extended.json | 0 .../json/{ => v2}/security_scheme/apiKey.json | 0 .../asymmetricEncryption - extended.json | 0 .../asymmetricEncryption - wrongly extended.json | 0 .../security_scheme/asymmetricEncryption.json | 0 .../{ => v2}/security_scheme/gssapi - extended.json | 0 .../security_scheme/gssapi - wrongly extended.json | 0 .../json/{ => v2}/security_scheme/gssapi.json | 0 .../security_scheme/http/httpApiKey - extended.json | 0 .../http/httpApiKey - wrongly extended.json | 0 .../{ => v2}/security_scheme/http/httpApiKey.json | 0 .../security_scheme/http/httpBasic - extended.json | 0 .../http/httpBasic - wrongly extended.json | 0 .../{ => v2}/security_scheme/http/httpBasic.json | 0 .../security_scheme/http/httpBearer - extended.json | 0 .../http/httpBearer - wrongly extended.json | 0 .../{ => v2}/security_scheme/http/httpBearer.json | 0 .../flow/authorizationCodeOAuthFlow - extended.json | 0 ...uthorizationCodeOAuthFlow - wrongly extended.json | 0 .../oauth2/flow/authorizationCodeOAuthFlow.json | 0 .../flow/clientCredentialsOAuthFlow - extended.json | 0 ...lientCredentialsOAuthFlow - wrongly extended.json | 0 .../oauth2/flow/clientCredentialsOAuthFlow.json | 0 .../oauth2/flow/implicitOAuthFlow - extended.json | 0 .../flow/implicitOAuthFlow - wrongly extended.json | 0 .../oauth2/flow/implicitOAuthFlow.json | 0 .../oauth2/flow/oauthFlow - extended.json | 0 .../oauth2/flow/oauthFlow - wrongly extended.json | 0 .../security_scheme/oauth2/flow/oauthFlow.json | 0 .../oauth2/flow/passwordOAuthFlow - extended.json | 0 .../flow/passwordOAuthFlow - wrongly extended.json | 0 .../oauth2/flow/passwordOAuthFlow.json | 0 .../security_scheme/oauth2/oauth2 - extended.json | 0 .../oauth2/oauth2 - wrongly extended.json | 0 .../json/{ => v2}/security_scheme/oauth2/oauth2.json | 0 .../oauth2/oauthFlows - extended.json | 0 .../oauth2/oauthFlows - wrongly extended.json | 0 .../{ => v2}/security_scheme/oauth2/oauthFlows.json | 0 .../security_scheme/openIdConnect - extended.json | 0 .../openIdConnect - wrongly extended.json | 0 .../json/{ => v2}/security_scheme/openIdConnect.json | 0 .../{ => v2}/security_scheme/plain - extended.json | 0 .../security_scheme/plain - wrongly extended.json | 0 .../json/{ => v2}/security_scheme/plain.json | 0 .../security_scheme/scramSha256 - extended.json | 0 .../scramSha256 - wrongly extended.json | 0 .../json/{ => v2}/security_scheme/scramSha256.json | 0 .../security_scheme/scramSha512 - extended.json | 0 .../scramSha512 - wrongly extended.json | 0 .../json/{ => v2}/security_scheme/scramSha512.json | 0 .../symmetricEncryption - extended.json | 0 .../symmetricEncryption - wrongly extended.json | 0 .../security_scheme/symmetricEncryption.json | 0 .../security_scheme/userPassword - extended.json | 0 .../userPassword - wrongly extended.json | 0 .../json/{ => v2}/security_scheme/userPassword.json | 0 79 files changed, 60 insertions(+), 60 deletions(-) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/X509 - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/X509 - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/X509.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/apiKey - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/apiKey - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/apiKey.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/asymmetricEncryption - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/asymmetricEncryption - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/asymmetricEncryption.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/gssapi - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/gssapi - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/gssapi.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/http/httpApiKey - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/http/httpApiKey - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/http/httpApiKey.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/http/httpBasic - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/http/httpBasic - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/http/httpBasic.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/http/httpBearer - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/http/httpBearer - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/http/httpBearer.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/implicitOAuthFlow.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/oauthFlow - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/oauthFlow.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/flow/passwordOAuthFlow.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/oauth2 - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/oauth2 - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/oauth2.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/oauthFlows - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/oauthFlows - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/oauth2/oauthFlows.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/openIdConnect - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/openIdConnect - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/openIdConnect.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/plain - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/plain - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/plain.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/scramSha256 - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/scramSha256 - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/scramSha256.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/scramSha512 - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/scramSha512 - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/scramSha512.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/symmetricEncryption - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/symmetricEncryption - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/symmetricEncryption.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/userPassword - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/userPassword - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/security_scheme/userPassword.json (100%) diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ApiKeySecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ApiKeySecuritySchemeTest.kt index fa6bdbeb..327f241a 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ApiKeySecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ApiKeySecuritySchemeTest.kt @@ -9,11 +9,11 @@ class ApiKeySecuritySchemeTest: SerDeTest() { override fun objectClass() = ApiKeySecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/apiKey.json" + override fun baseObjectJson() = "/json/v2/security_scheme/apiKey.json" - override fun extendedObjectJson() = "/json/security_scheme/apiKey - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/apiKey - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/apiKey - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/apiKey - wrongly extended.json" override fun build(): SecurityScheme { return ApiKeySecurityScheme.apiKeyBuilder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/AsymmetricEncryptionSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/AsymmetricEncryptionSecuritySchemeTest.kt index fd7958fb..4ed8707a 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/AsymmetricEncryptionSecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/AsymmetricEncryptionSecuritySchemeTest.kt @@ -9,11 +9,11 @@ class AsymmetricEncryptionSecuritySchemeTest: SerDeTest() { override fun objectClass() = SecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/asymmetricEncryption.json" + override fun baseObjectJson() = "/json/v2/security_scheme/asymmetricEncryption.json" - override fun extendedObjectJson() = "/json/security_scheme/asymmetricEncryption - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/asymmetricEncryption - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/asymmetricEncryption - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/asymmetricEncryption - wrongly extended.json" override fun build(): SecurityScheme { return SecurityScheme.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/GssapiSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/GssapiSecuritySchemeTest.kt index 172b11c8..5823f19b 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/GssapiSecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/GssapiSecuritySchemeTest.kt @@ -9,11 +9,11 @@ class GssapiSecuritySchemeTest: SerDeTest() { override fun objectClass() = SecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/gssapi.json" + override fun baseObjectJson() = "/json/v2/security_scheme/gssapi.json" - override fun extendedObjectJson() = "/json/security_scheme/gssapi - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/gssapi - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/gssapi - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/gssapi - wrongly extended.json" override fun build(): SecurityScheme { return SecurityScheme.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/OpenIdConnectSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/OpenIdConnectSecuritySchemeTest.kt index 97a08e96..6a9eb726 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/OpenIdConnectSecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/OpenIdConnectSecuritySchemeTest.kt @@ -9,11 +9,11 @@ class OpenIdConnectSecuritySchemeTest: SerDeTest() override fun objectClass() = OpenIdConnectSecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/openIdConnect.json" + override fun baseObjectJson() = "/json/v2/security_scheme/openIdConnect.json" - override fun extendedObjectJson() = "/json/security_scheme/openIdConnect - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/openIdConnect - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/openIdConnect - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/openIdConnect - wrongly extended.json" override fun build(): SecurityScheme { return OpenIdConnectSecurityScheme.openIdBuilder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/PlainSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/PlainSecuritySchemeTest.kt index 6cce170c..4adfd21a 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/PlainSecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/PlainSecuritySchemeTest.kt @@ -9,11 +9,11 @@ class PlainSecuritySchemeTest: SerDeTest() { override fun objectClass() = SecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/plain.json" + override fun baseObjectJson() = "/json/v2/security_scheme/plain.json" - override fun extendedObjectJson() = "/json/security_scheme/plain - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/plain - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/plain - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/plain - wrongly extended.json" override fun build(): SecurityScheme { return SecurityScheme.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ScramSha256SecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ScramSha256SecuritySchemeTest.kt index 24c1b5f7..d60c5a29 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ScramSha256SecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ScramSha256SecuritySchemeTest.kt @@ -9,11 +9,11 @@ class ScramSha256SecuritySchemeTest: SerDeTest() { override fun objectClass() = SecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/scramSha256.json" + override fun baseObjectJson() = "/json/v2/security_scheme/scramSha256.json" - override fun extendedObjectJson() = "/json/security_scheme/scramSha256 - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/scramSha256 - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/scramSha256 - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/scramSha256 - wrongly extended.json" override fun build(): SecurityScheme { return SecurityScheme.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ScramSha512SecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ScramSha512SecuritySchemeTest.kt index 6e44502f..de3ea488 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ScramSha512SecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/ScramSha512SecuritySchemeTest.kt @@ -9,11 +9,11 @@ class ScramSha512SecuritySchemeTest: SerDeTest() { override fun objectClass() = SecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/scramSha512.json" + override fun baseObjectJson() = "/json/v2/security_scheme/scramSha512.json" - override fun extendedObjectJson() = "/json/security_scheme/scramSha512 - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/scramSha512 - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/scramSha512 - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/scramSha512 - wrongly extended.json" override fun build(): SecurityScheme { return SecurityScheme.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/SymmetricEncryptionSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/SymmetricEncryptionSecuritySchemeTest.kt index 90adcbda..479a88c5 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/SymmetricEncryptionSecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/SymmetricEncryptionSecuritySchemeTest.kt @@ -9,11 +9,11 @@ class SymmetricEncryptionSecuritySchemeTest: SerDeTest() { override fun objectClass() = SecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/symmetricEncryption.json" + override fun baseObjectJson() = "/json/v2/security_scheme/symmetricEncryption.json" - override fun extendedObjectJson() = "/json/security_scheme/symmetricEncryption - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/symmetricEncryption - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/symmetricEncryption - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/symmetricEncryption - wrongly extended.json" override fun build(): SecurityScheme { return SecurityScheme.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/UserPasswordSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/UserPasswordSecuritySchemeTest.kt index a2eaea5f..59f9ecef 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/UserPasswordSecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/UserPasswordSecuritySchemeTest.kt @@ -9,11 +9,11 @@ class UserPasswordSecuritySchemeTest: SerDeTest() { override fun objectClass() = SecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/userPassword.json" + override fun baseObjectJson() = "/json/v2/security_scheme/userPassword.json" - override fun extendedObjectJson() = "/json/security_scheme/userPassword - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/userPassword - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/userPassword - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/userPassword - wrongly extended.json" override fun build(): SecurityScheme { return SecurityScheme.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/X509SecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/X509SecuritySchemeTest.kt index 4bf34b00..3a18ab74 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/X509SecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/X509SecuritySchemeTest.kt @@ -9,11 +9,11 @@ class X509SecuritySchemeTest: SerDeTest() { override fun objectClass() = SecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/X509.json" + override fun baseObjectJson() = "/json/v2/security_scheme/X509.json" - override fun extendedObjectJson() = "/json/security_scheme/X509 - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/X509 - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/X509 - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/X509 - wrongly extended.json" override fun build(): SecurityScheme { return SecurityScheme.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/http/HttpApiKeySecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/http/HttpApiKeySecuritySchemeTest.kt index acc8ccc1..9b0a782d 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/http/HttpApiKeySecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/http/HttpApiKeySecuritySchemeTest.kt @@ -6,11 +6,11 @@ class HttpApiKeySecuritySchemeTest: SerDeTest() { override fun objectClass() = HttpApiKeySecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/http/httpApiKey.json" + override fun baseObjectJson() = "/json/v2/security_scheme/http/httpApiKey.json" - override fun extendedObjectJson() = "/json/security_scheme/http/httpApiKey - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/http/httpApiKey - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/http/httpApiKey - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/http/httpApiKey - wrongly extended.json" override fun build(): HttpApiKeySecurityScheme { return HttpApiKeySecurityScheme.httpApiKeyBuilder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/http/HttpSecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/http/HttpSecuritySchemeTest.kt index da721d92..672d53ab 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/http/HttpSecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/http/HttpSecuritySchemeTest.kt @@ -6,11 +6,11 @@ class HttpSecuritySchemeBasicTest: SerDeTest() { override fun objectClass() = HttpSecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/http/httpBasic.json" + override fun baseObjectJson() = "/json/v2/security_scheme/http/httpBasic.json" - override fun extendedObjectJson() = "/json/security_scheme/http/httpBasic - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/http/httpBasic - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/http/httpBasic - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/http/httpBasic - wrongly extended.json" override fun build(): HttpSecurityScheme { return HttpSecurityScheme.httpBuilder() @@ -25,11 +25,11 @@ class HttpSecuritySchemeBearerTest: SerDeTest() { override fun objectClass() = HttpSecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/http/httpBearer.json" + override fun baseObjectJson() = "/json/v2/security_scheme/http/httpBearer.json" - override fun extendedObjectJson() = "/json/security_scheme/http/httpBearer - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/http/httpBearer - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/http/httpBearer - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/http/httpBearer - wrongly extended.json" override fun build(): HttpSecurityScheme { return HttpSecurityScheme.httpBuilder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/OAuth2SecuritySchemeTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/OAuth2SecuritySchemeTest.kt index 92a572a1..00c2d19d 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/OAuth2SecuritySchemeTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/OAuth2SecuritySchemeTest.kt @@ -10,11 +10,11 @@ class OAuth2SecuritySchemeTest: SerDeTest() { override fun objectClass() = OAuth2SecurityScheme::class.java - override fun baseObjectJson() = "/json/security_scheme/oauth2/oauth2.json" + override fun baseObjectJson() = "/json/v2/security_scheme/oauth2/oauth2.json" - override fun extendedObjectJson() = "/json/security_scheme/oauth2/oauth2 - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/oauth2/oauth2 - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/oauth2/oauth2 - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/oauth2/oauth2 - wrongly extended.json" override fun build(): SecurityScheme { return OAuth2SecurityScheme.oauth2Builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/OAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/OAuthFlowTest.kt index 3d7037fa..1841a203 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/OAuthFlowTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/OAuthFlowTest.kt @@ -10,11 +10,11 @@ class OAuthFlowTest: SerDeTest() { override fun objectClass() = OAuthFlows::class.java - override fun baseObjectJson() = "/json/security_scheme/oauth2/oauthFlows.json" + override fun baseObjectJson() = "/json/v2/security_scheme/oauth2/oauthFlows.json" - override fun extendedObjectJson() = "/json/security_scheme/oauth2/oauthFlows - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/oauth2/oauthFlows - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/oauth2/oauthFlows - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/oauth2/oauthFlows - wrongly extended.json" override fun build(): OAuthFlows { return OAuthFlows.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlowTest.kt index ba33e07f..c71ae840 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlowTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/AuthorizationCodeOAuthFlowTest.kt @@ -6,11 +6,11 @@ class AuthorizationCodeOAuthFlowTest: SerDeTest() { override fun objectClass() = AuthorizationCodeOAuthFlow::class.java - override fun baseObjectJson() = "/json/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json" + override fun baseObjectJson() = "/json/v2/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json" - override fun extendedObjectJson() = "/json/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json" override fun build(): AuthorizationCodeOAuthFlow { return AuthorizationCodeOAuthFlow.authorizationCodeBuilder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/ClientCredentialsOAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/ClientCredentialsOAuthFlowTest.kt index 68664468..cca55c8a 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/ClientCredentialsOAuthFlowTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/ClientCredentialsOAuthFlowTest.kt @@ -6,11 +6,11 @@ class ClientCredentialsOAuthFlowTest: SerDeTest() { override fun objectClass() = ClientCredentialsOAuthFlow::class.java - override fun baseObjectJson() = "/json/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json" + override fun baseObjectJson() = "/json/v2/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json" - override fun extendedObjectJson() = "/json/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json" override fun build(): ClientCredentialsOAuthFlow { return ClientCredentialsOAuthFlow.clientCredentialsBuilder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/ImplicitOAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/ImplicitOAuthFlowTest.kt index a63a4b9a..452606d0 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/ImplicitOAuthFlowTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/ImplicitOAuthFlowTest.kt @@ -6,11 +6,11 @@ class ImplicitOAuthFlowTest: SerDeTest() { override fun objectClass() = ImplicitOAuthFlow::class.java - override fun baseObjectJson() = "/json/security_scheme/oauth2/flow/implicitOAuthFlow.json" + override fun baseObjectJson() = "/json/v2/security_scheme/oauth2/flow/implicitOAuthFlow.json" - override fun extendedObjectJson() = "/json/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json" override fun build(): ImplicitOAuthFlow { return ImplicitOAuthFlow.implicitBuilder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/OAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/OAuthFlowTest.kt index 33849f93..b2dde97b 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/OAuthFlowTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/OAuthFlowTest.kt @@ -6,11 +6,11 @@ class OAuthFlowTest: SerDeTest() { override fun objectClass() = OAuthFlow::class.java - override fun baseObjectJson() = "/json/security_scheme/oauth2/flow/oauthFlow.json" + override fun baseObjectJson() = "/json/v2/security_scheme/oauth2/flow/oauthFlow.json" - override fun extendedObjectJson() = "/json/security_scheme/oauth2/flow/oauthFlow - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/oauth2/flow/oauthFlow - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json" override fun build(): OAuthFlow { return OAuthFlow.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/PasswordOAuthFlowTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/PasswordOAuthFlowTest.kt index 6fee6747..db1013cb 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/PasswordOAuthFlowTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/security_scheme/oauth2/flow/PasswordOAuthFlowTest.kt @@ -6,11 +6,11 @@ class PasswordOAuthFlowTest: SerDeTest() { override fun objectClass() = PasswordOAuthFlow::class.java - override fun baseObjectJson() = "/json/security_scheme/oauth2/flow/passwordOAuthFlow.json" + override fun baseObjectJson() = "/json/v2/security_scheme/oauth2/flow/passwordOAuthFlow.json" - override fun extendedObjectJson() = "/json/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json" + override fun extendedObjectJson() = "/json/v2/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json" - override fun wronglyExtendedObjectJson() = "/json/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json" override fun build(): PasswordOAuthFlow { return PasswordOAuthFlow.passwordBuilder() diff --git a/asyncapi-core/src/test/resources/json/security_scheme/X509 - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/X509 - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/X509 - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/X509 - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/X509 - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/X509 - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/X509 - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/X509 - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/X509.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/X509.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/X509.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/X509.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/apiKey - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/apiKey - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/apiKey - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/apiKey - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/apiKey - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/apiKey - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/apiKey - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/apiKey - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/apiKey.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/apiKey.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/apiKey.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/apiKey.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/asymmetricEncryption - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/asymmetricEncryption - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/asymmetricEncryption - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/asymmetricEncryption - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/asymmetricEncryption - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/asymmetricEncryption - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/asymmetricEncryption - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/asymmetricEncryption - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/asymmetricEncryption.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/asymmetricEncryption.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/asymmetricEncryption.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/asymmetricEncryption.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/gssapi - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/gssapi - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/gssapi - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/gssapi - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/gssapi - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/gssapi - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/gssapi - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/gssapi - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/gssapi.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/gssapi.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/gssapi.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/gssapi.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/http/httpApiKey - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpApiKey - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/http/httpApiKey - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpApiKey - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/http/httpApiKey - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpApiKey - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/http/httpApiKey - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpApiKey - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/http/httpApiKey.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpApiKey.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/http/httpApiKey.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpApiKey.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/http/httpBasic - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBasic - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/http/httpBasic - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBasic - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/http/httpBasic - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBasic - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/http/httpBasic - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBasic - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/http/httpBasic.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBasic.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/http/httpBasic.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBasic.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/http/httpBearer - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBearer - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/http/httpBearer - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBearer - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/http/httpBearer - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBearer - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/http/httpBearer - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBearer - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/http/httpBearer.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBearer.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/http/httpBearer.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/http/httpBearer.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/authorizationCodeOAuthFlow - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/authorizationCodeOAuthFlow.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/clientCredentialsOAuthFlow - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/clientCredentialsOAuthFlow.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/implicitOAuthFlow - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/implicitOAuthFlow - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/implicitOAuthFlow.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/implicitOAuthFlow.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/implicitOAuthFlow.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/implicitOAuthFlow.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/oauthFlow - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/oauthFlow - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/oauthFlow - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/oauthFlow - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/oauthFlow - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/oauthFlow.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/oauthFlow.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/oauthFlow.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/oauthFlow.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/passwordOAuthFlow - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/passwordOAuthFlow - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/passwordOAuthFlow.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/passwordOAuthFlow.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/flow/passwordOAuthFlow.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/flow/passwordOAuthFlow.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauth2 - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauth2 - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauth2 - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauth2 - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauth2 - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauth2 - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauth2 - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauth2 - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauth2.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauth2.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauth2.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauth2.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauthFlows - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauthFlows - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauthFlows - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauthFlows - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauthFlows - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauthFlows - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauthFlows - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauthFlows - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauthFlows.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauthFlows.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/oauth2/oauthFlows.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/oauth2/oauthFlows.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/openIdConnect - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/openIdConnect - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/openIdConnect - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/openIdConnect - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/openIdConnect - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/openIdConnect - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/openIdConnect - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/openIdConnect - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/openIdConnect.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/openIdConnect.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/openIdConnect.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/openIdConnect.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/plain - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/plain - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/plain - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/plain - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/plain - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/plain - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/plain - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/plain - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/plain.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/plain.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/plain.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/plain.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/scramSha256 - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha256 - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/scramSha256 - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha256 - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/scramSha256 - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha256 - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/scramSha256 - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha256 - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/scramSha256.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha256.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/scramSha256.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha256.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/scramSha512 - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha512 - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/scramSha512 - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha512 - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/scramSha512 - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha512 - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/scramSha512 - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha512 - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/scramSha512.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha512.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/scramSha512.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/scramSha512.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/symmetricEncryption - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/symmetricEncryption - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/symmetricEncryption - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/symmetricEncryption - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/symmetricEncryption - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/symmetricEncryption - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/symmetricEncryption - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/symmetricEncryption - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/symmetricEncryption.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/symmetricEncryption.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/symmetricEncryption.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/symmetricEncryption.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/userPassword - extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/userPassword - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/userPassword - extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/userPassword - extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/userPassword - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/userPassword - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/userPassword - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/userPassword - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/security_scheme/userPassword.json b/asyncapi-core/src/test/resources/json/v2/security_scheme/userPassword.json similarity index 100% rename from asyncapi-core/src/test/resources/json/security_scheme/userPassword.json rename to asyncapi-core/src/test/resources/json/v2/security_scheme/userPassword.json From 2425b6022d3bf902d6725f4e0cdffc174907bacd Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Thu, 5 Oct 2023 23:44:21 +0400 Subject: [PATCH 52/54] refactor(tests): new location for binding test resources --- .../v2/binding/channel/amqp/AMQPChannelBindingTest.kt | 6 +++--- .../channel/anypointmq/AnypointMQChannelBindingTest.kt | 6 +++--- .../channel/googlepubsub/GooglePubSubChannelBindingTest.kt | 6 +++--- .../v2/binding/channel/ibmmq/IBMMQChannelBindingTest.kt | 6 +++--- .../v2/binding/channel/kafka/KafkaChannelBindingTest.kt | 6 +++--- .../v2/binding/channel/pulsar/PulsarChannelBindingTest.kt | 6 +++--- .../v2/binding/channel/ws/WebSocketsChannelBindingTest.kt | 6 +++--- .../v2/binding/message/amqp/AMQPMessageBindingTest.kt | 6 +++--- .../message/anypointmq/AnypointMQMessageBindingTest.kt | 6 +++--- .../message/googlepubsub/GooglePubSubMessageBindingTest.kt | 6 +++--- .../v2/binding/message/http/HTTPMessageBindingTest.kt | 6 +++--- .../v2/binding/message/ibmmq/IBMMQMessageBindingTest.kt | 6 +++--- .../v2/binding/message/kafka/KafkaMessageBindingTest.kt | 6 +++--- .../v2/binding/message/mqtt/MQTTMessageBindingTest.kt | 6 +++--- .../v2/binding/operation/amqp/AMQPOperationBindingTest.kt | 6 +++--- .../v2/binding/operation/http/HTTPOperationBindingTest.kt | 6 +++--- .../v2/binding/operation/kafka/KafkaOperationBindingTest.kt | 6 +++--- .../v2/binding/operation/mqtt/MQTTOperationBindingTest.kt | 6 +++--- .../v2/binding/operation/nats/NATSOperationBindingTest.kt | 6 +++--- .../binding/operation/solace/SolaceOperationBindingTest.kt | 6 +++--- .../v2/binding/server/ibmmq/IBMMQServerBindingTest.kt | 6 +++--- .../v2/binding/server/kafka/KafkaServerBindingTest.kt | 6 +++--- .../v2/binding/server/mqtt/MQTTServerBindingTest.kt | 6 +++--- .../v2/binding/server/mqtt5/MQTT5ServerBindingTest.kt | 6 +++--- .../v2/binding/server/pulsar/PulsarServerBindingTest.kt | 6 +++--- .../v2/binding/server/solace/SolaceServerBindingTest.kt | 6 +++--- .../binding/channel/amqp/amqpChannelBinding - extended.json | 0 .../channel/amqp/amqpChannelBinding - wrongly extended.json | 0 .../{ => v2}/binding/channel/amqp/amqpChannelBinding.json | 0 .../anypoint/anypointMQChannelBinding - extended.json | 0 .../anypointMQChannelBinding - wrongly extended.json | 0 .../binding/channel/anypoint/anypointMQChannelBinding.json | 0 .../googlepubsub/googlePubSubChannelBinding - extended.json | 0 .../googlePubSubChannelBinding - wrongly extended.json | 0 .../channel/googlepubsub/googlePubSubChannelBinding.json | 0 .../channel/ibmmq/ibmMQChannelBinding - extended.json | 0 .../ibmmq/ibmMQChannelBinding - wrongly extended.json | 0 .../{ => v2}/binding/channel/ibmmq/ibmMQChannelBinding.json | 0 .../channel/kafka/kafkaChannelBinding - extended.json | 0 .../kafka/kafkaChannelBinding - wrongly extended.json | 0 .../{ => v2}/binding/channel/kafka/kafkaChannelBinding.json | 0 .../channel/pulsar/pulsarChannelBinding - extended.json | 0 .../pulsar/pulsarChannelBinding - wrongly extended.json | 0 .../binding/channel/pulsar/pulsarChannelBinding.json | 0 .../channel/ws/webSocketsChannelBinding - extended.json | 0 .../ws/webSocketsChannelBinding - wrongly extended.json | 0 .../binding/channel/ws/webSocketsChannelBinding.json | 0 .../binding/message/amqp/amqpMessageBinding - extended.json | 0 .../message/amqp/amqpMessageBinding - wrongly extended.json | 0 .../{ => v2}/binding/message/amqp/amqpMessageBinding.json | 0 .../anypointmq/anypointMQMessageBinding - extended.json | 0 .../anypointMQMessageBinding - wrongly extended.json | 0 .../message/anypointmq/anypointMQMessageBinding.json | 0 .../googlepubsub/googlePubSubMessageBinding - extended.json | 0 .../googlePubSubMessageBinding - wrongly extended.json | 0 .../message/googlepubsub/googlePubSubMessageBinding.json | 0 .../binding/message/http/httpMessageBinding - extended.json | 0 .../message/http/httpMessageBinding - wrongly extended.json | 0 .../{ => v2}/binding/message/http/httpMessageBinding.json | 0 .../message/ibmmq/ibmMQMessageBinding - extended.json | 0 .../ibmmq/ibmMQMessageBinding - wrongly extended.json | 0 .../{ => v2}/binding/message/ibmmq/ibmMQMessageBinding.json | 0 .../message/kafka/kafkaMessageBinding - extended.json | 0 .../kafka/kafkaMessageBinding - wrongly extended.json | 0 .../{ => v2}/binding/message/kafka/kafkaMessageBinding.json | 0 .../binding/message/mqtt/mqttMessageBinding - extended.json | 0 .../message/mqtt/mqttMessageBinding - wrongly extended.json | 0 .../{ => v2}/binding/message/mqtt/mqttMessageBinding.json | 0 .../operation/amqp/amqpOperationBinding - extended.json | 0 .../amqp/amqpOperationBinding - wrongly extended.json | 0 .../binding/operation/amqp/amqpOperationBinding.json | 0 .../operation/http/httpOperationBinding - extended.json | 0 .../http/httpOperationBinding - wrongly extended.json | 0 .../binding/operation/http/httpOperationBinding.json | 0 .../operation/kafka/kafkaOperationBinding - extended.json | 0 .../kafka/kafkaOperationBinding - wrongly extended.json | 0 .../binding/operation/kafka/kafkaOperationBinding.json | 0 .../operation/mqtt/mqttOperationBinding - extended.json | 0 .../mqtt/mqttOperationBinding - wrongly extended.json | 0 .../binding/operation/mqtt/mqttOperationBinding.json | 0 .../operation/nats/natsOperationBinding - extended.json | 0 .../nats/natsOperationBinding - wrongly extended.json | 0 .../binding/operation/nats/natsOperationBinding.json | 0 .../operation/solace/solaceOperationBinding - extended.json | 0 .../solace/solaceOperationBinding - wrongly extended.json | 0 .../binding/operation/solace/solaceOperationBinding.json | 0 .../binding/server/ibmmq/ibmmqServerBinding - extended.json | 0 .../server/ibmmq/ibmmqServerBinding - wrongly extended.json | 0 .../{ => v2}/binding/server/ibmmq/ibmmqServerBinding.json | 0 .../binding/server/kafka/kafkaServerBinding - extended.json | 0 .../server/kafka/kafkaServerBinding - wrongly extended.json | 0 .../{ => v2}/binding/server/kafka/kafkaServerBinding.json | 0 .../binding/server/mqtt/mqttServerBinding - extended.json | 0 .../server/mqtt/mqttServerBinding - wrongly extended.json | 0 .../{ => v2}/binding/server/mqtt/mqttServerBinding.json | 0 .../binding/server/mqtt5/mqtt5ServerBinding - extended.json | 0 .../server/mqtt5/mqtt5ServerBinding - wrongly extended.json | 0 .../{ => v2}/binding/server/mqtt5/mqtt5ServerBinding.json | 0 .../server/pulsar/pulsarServerBinding - extended.json | 0 .../pulsar/pulsarServerBinding - wrongly extended.json | 0 .../{ => v2}/binding/server/pulsar/pulsarServerBinding.json | 0 .../server/solace/solaceServerBinding - extended.json | 0 .../solace/solaceServerBinding - wrongly extended.json | 0 .../{ => v2}/binding/server/solace/solaceServerBinding.json | 0 104 files changed, 78 insertions(+), 78 deletions(-) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/amqp/amqpChannelBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/amqp/amqpChannelBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/amqp/amqpChannelBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/anypoint/anypointMQChannelBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/anypoint/anypointMQChannelBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/googlepubsub/googlePubSubChannelBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/ibmmq/ibmMQChannelBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/ibmmq/ibmMQChannelBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/kafka/kafkaChannelBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/kafka/kafkaChannelBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/pulsar/pulsarChannelBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/pulsar/pulsarChannelBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/ws/webSocketsChannelBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/channel/ws/webSocketsChannelBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/amqp/amqpMessageBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/amqp/amqpMessageBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/amqp/amqpMessageBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/anypointmq/anypointMQMessageBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/anypointmq/anypointMQMessageBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/googlepubsub/googlePubSubMessageBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/http/httpMessageBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/http/httpMessageBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/http/httpMessageBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/ibmmq/ibmMQMessageBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/ibmmq/ibmMQMessageBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/kafka/kafkaMessageBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/kafka/kafkaMessageBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/kafka/kafkaMessageBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/mqtt/mqttMessageBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/mqtt/mqttMessageBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/message/mqtt/mqttMessageBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/amqp/amqpOperationBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/amqp/amqpOperationBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/amqp/amqpOperationBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/http/httpOperationBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/http/httpOperationBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/http/httpOperationBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/kafka/kafkaOperationBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/kafka/kafkaOperationBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/mqtt/mqttOperationBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/mqtt/mqttOperationBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/nats/natsOperationBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/nats/natsOperationBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/nats/natsOperationBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/solace/solaceOperationBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/solace/solaceOperationBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/operation/solace/solaceOperationBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/ibmmq/ibmmqServerBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/ibmmq/ibmmqServerBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/kafka/kafkaServerBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/kafka/kafkaServerBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/kafka/kafkaServerBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/mqtt/mqttServerBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/mqtt/mqttServerBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/mqtt/mqttServerBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/mqtt5/mqtt5ServerBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/mqtt5/mqtt5ServerBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/pulsar/pulsarServerBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/pulsar/pulsarServerBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/pulsar/pulsarServerBinding.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/solace/solaceServerBinding - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/solace/solaceServerBinding - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/binding/server/solace/solaceServerBinding.json (100%) diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/amqp/AMQPChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/amqp/AMQPChannelBindingTest.kt index f89a520a..7ac5f187 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/amqp/AMQPChannelBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/amqp/AMQPChannelBindingTest.kt @@ -13,11 +13,11 @@ class AMQPChannelBindingTest: SerDeTest() { override fun objectClass() = AMQPChannelBinding::class.java - override fun baseObjectJson() = "/json/binding/channel/amqp/amqpChannelBinding.json" + override fun baseObjectJson() = "/json/v2/binding/channel/amqp/amqpChannelBinding.json" - override fun extendedObjectJson() = "/json/binding/channel/amqp/amqpChannelBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/channel/amqp/amqpChannelBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/channel/amqp/amqpChannelBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/channel/amqp/amqpChannelBinding - wrongly extended.json" override fun build(): AMQPChannelBinding { return AMQPChannelBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/anypointmq/AnypointMQChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/anypointmq/AnypointMQChannelBindingTest.kt index 96d93f92..57b0626c 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/anypointmq/AnypointMQChannelBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/anypointmq/AnypointMQChannelBindingTest.kt @@ -10,11 +10,11 @@ class AnypointMQChannelBindingTest: SerDeTest() { override fun objectClass() = AnypointMQChannelBinding::class.java - override fun baseObjectJson() = "/json/binding/channel/anypoint/anypointMQChannelBinding.json" + override fun baseObjectJson() = "/json/v2/binding/channel/anypoint/anypointMQChannelBinding.json" - override fun extendedObjectJson() = "/json/binding/channel/anypoint/anypointMQChannelBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/channel/anypoint/anypointMQChannelBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json" override fun build(): AnypointMQChannelBinding { return AnypointMQChannelBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/googlepubsub/GooglePubSubChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/googlepubsub/GooglePubSubChannelBindingTest.kt index bde82173..3f3c180b 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/googlepubsub/GooglePubSubChannelBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/googlepubsub/GooglePubSubChannelBindingTest.kt @@ -6,11 +6,11 @@ class GooglePubSubChannelBindingTest: SerDeTest() { override fun objectClass() = GooglePubSubChannelBinding::class.java - override fun baseObjectJson() = "/json/binding/channel/googlepubsub/googlePubSubChannelBinding.json" + override fun baseObjectJson() = "/json/v2/binding/channel/googlepubsub/googlePubSubChannelBinding.json" - override fun extendedObjectJson() = "/json/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json" override fun build(): GooglePubSubChannelBinding { return GooglePubSubChannelBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/ibmmq/IBMMQChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/ibmmq/IBMMQChannelBindingTest.kt index 62e4a4a6..5d6a9f87 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/ibmmq/IBMMQChannelBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/ibmmq/IBMMQChannelBindingTest.kt @@ -6,11 +6,11 @@ class IBMMQChannelBindingTest: SerDeTest() { override fun objectClass() = IBMMQChannelBinding::class.java - override fun baseObjectJson() = "/json/binding/channel/ibmmq/ibmMQChannelBinding.json" + override fun baseObjectJson() = "/json/v2/binding/channel/ibmmq/ibmMQChannelBinding.json" - override fun extendedObjectJson() = "/json/binding/channel/ibmmq/ibmMQChannelBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/channel/ibmmq/ibmMQChannelBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json" override fun build(): IBMMQChannelBinding { return IBMMQChannelBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/kafka/KafkaChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/kafka/KafkaChannelBindingTest.kt index b0ebffa0..98502a4f 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/kafka/KafkaChannelBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/kafka/KafkaChannelBindingTest.kt @@ -10,11 +10,11 @@ class KafkaChannelBindingTest: SerDeTest() { override fun objectClass() = KafkaChannelBinding::class.java - override fun baseObjectJson() = "/json/binding/channel/kafka/kafkaChannelBinding.json" + override fun baseObjectJson() = "/json/v2/binding/channel/kafka/kafkaChannelBinding.json" - override fun extendedObjectJson() = "/json/binding/channel/kafka/kafkaChannelBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/channel/kafka/kafkaChannelBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json" override fun build(): KafkaChannelBinding { return KafkaChannelBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/pulsar/PulsarChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/pulsar/PulsarChannelBindingTest.kt index 9b502808..7d7f7b85 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/pulsar/PulsarChannelBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/pulsar/PulsarChannelBindingTest.kt @@ -6,11 +6,11 @@ class PulsarChannelBindingTest: SerDeTest() { override fun objectClass() = PulsarChannelBinding::class.java - override fun baseObjectJson() = "/json/binding/channel/pulsar/pulsarChannelBinding.json" + override fun baseObjectJson() = "/json/v2/binding/channel/pulsar/pulsarChannelBinding.json" - override fun extendedObjectJson() = "/json/binding/channel/pulsar/pulsarChannelBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/channel/pulsar/pulsarChannelBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json" override fun build(): PulsarChannelBinding { return PulsarChannelBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/ws/WebSocketsChannelBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/ws/WebSocketsChannelBindingTest.kt index 6588029c..252a01b9 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/ws/WebSocketsChannelBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/channel/ws/WebSocketsChannelBindingTest.kt @@ -12,11 +12,11 @@ class WebSocketsChannelBindingTest: SerDeTest() { override fun objectClass() = WebSocketsChannelBinding::class.java - override fun baseObjectJson() = "/json/binding/channel/ws/webSocketsChannelBinding.json" + override fun baseObjectJson() = "/json/v2/binding/channel/ws/webSocketsChannelBinding.json" - override fun extendedObjectJson() = "/json/binding/channel/ws/webSocketsChannelBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/channel/ws/webSocketsChannelBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json" override fun build(): WebSocketsChannelBinding { return WebSocketsChannelBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/amqp/AMQPMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/amqp/AMQPMessageBindingTest.kt index 92562838..baa183c2 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/amqp/AMQPMessageBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/amqp/AMQPMessageBindingTest.kt @@ -6,11 +6,11 @@ class AMQPMessageBindingTest: SerDeTest() { override fun objectClass() = AMQPMessageBinding::class.java - override fun baseObjectJson() = "/json/binding/message/amqp/amqpMessageBinding.json" + override fun baseObjectJson() = "/json/v2/binding/message/amqp/amqpMessageBinding.json" - override fun extendedObjectJson() = "/json/binding/message/amqp/amqpMessageBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/message/amqp/amqpMessageBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/message/amqp/amqpMessageBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/message/amqp/amqpMessageBinding - wrongly extended.json" override fun build(): AMQPMessageBinding { return AMQPMessageBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/anypointmq/AnypointMQMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/anypointmq/AnypointMQMessageBindingTest.kt index 24f94596..83a254e9 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/anypointmq/AnypointMQMessageBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/anypointmq/AnypointMQMessageBindingTest.kt @@ -8,11 +8,11 @@ class AnypointMQMessageBindingTest: SerDeTest() { override fun objectClass() = AnypointMQMessageBinding::class.java - override fun baseObjectJson() = "/json/binding/message/anypointmq/anypointMQMessageBinding.json" + override fun baseObjectJson() = "/json/v2/binding/message/anypointmq/anypointMQMessageBinding.json" - override fun extendedObjectJson() = "/json/binding/message/anypointmq/anypointMQMessageBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/message/anypointmq/anypointMQMessageBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json" override fun build(): AnypointMQMessageBinding { return AnypointMQMessageBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/googlepubsub/GooglePubSubMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/googlepubsub/GooglePubSubMessageBindingTest.kt index 99e10dcb..ca4354aa 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/googlepubsub/GooglePubSubMessageBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/googlepubsub/GooglePubSubMessageBindingTest.kt @@ -6,11 +6,11 @@ class GooglePubSubMessageBindingTest: SerDeTest() { override fun objectClass() = GooglePubSubMessageBinding::class.java - override fun baseObjectJson() = "/json/binding/message/googlepubsub/googlePubSubMessageBinding.json" + override fun baseObjectJson() = "/json/v2/binding/message/googlepubsub/googlePubSubMessageBinding.json" - override fun extendedObjectJson() = "/json/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json" override fun build(): GooglePubSubMessageBinding { return GooglePubSubMessageBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/http/HTTPMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/http/HTTPMessageBindingTest.kt index 3db85b16..8c616f2c 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/http/HTTPMessageBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/http/HTTPMessageBindingTest.kt @@ -8,11 +8,11 @@ class HTTPMessageBindingTest: SerDeTest() { override fun objectClass() = HTTPMessageBinding::class.java - override fun baseObjectJson() = "/json/binding/message/http/httpMessageBinding.json" + override fun baseObjectJson() = "/json/v2/binding/message/http/httpMessageBinding.json" - override fun extendedObjectJson() = "/json/binding/message/http/httpMessageBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/message/http/httpMessageBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/message/http/httpMessageBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/message/http/httpMessageBinding - wrongly extended.json" override fun build(): HTTPMessageBinding { return HTTPMessageBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/ibmmq/IBMMQMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/ibmmq/IBMMQMessageBindingTest.kt index 43661874..f190262f 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/ibmmq/IBMMQMessageBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/ibmmq/IBMMQMessageBindingTest.kt @@ -6,11 +6,11 @@ class IBMMQMessageBindingTest: SerDeTest() { override fun objectClass() = IBMMQMessageBinding::class.java - override fun baseObjectJson() = "/json/binding/message/ibmmq/ibmMQMessageBinding.json" + override fun baseObjectJson() = "/json/v2/binding/message/ibmmq/ibmMQMessageBinding.json" - override fun extendedObjectJson() = "/json/binding/message/ibmmq/ibmMQMessageBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/message/ibmmq/ibmMQMessageBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json" override fun build(): IBMMQMessageBinding { return IBMMQMessageBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/kafka/KafkaMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/kafka/KafkaMessageBindingTest.kt index d54e8f3b..7180234b 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/kafka/KafkaMessageBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/kafka/KafkaMessageBindingTest.kt @@ -8,11 +8,11 @@ class KafkaMessageBindingTest: SerDeTest() { override fun objectClass() = KafkaMessageBinding::class.java - override fun baseObjectJson() = "/json/binding/message/kafka/kafkaMessageBinding.json" + override fun baseObjectJson() = "/json/v2/binding/message/kafka/kafkaMessageBinding.json" - override fun extendedObjectJson() = "/json/binding/message/kafka/kafkaMessageBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/message/kafka/kafkaMessageBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/message/kafka/kafkaMessageBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/message/kafka/kafkaMessageBinding - wrongly extended.json" override fun build(): KafkaMessageBinding { return KafkaMessageBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/mqtt/MQTTMessageBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/mqtt/MQTTMessageBindingTest.kt index a565bb3d..43791dd2 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/mqtt/MQTTMessageBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/message/mqtt/MQTTMessageBindingTest.kt @@ -6,11 +6,11 @@ class MQTTMessageBindingTest: SerDeTest() { override fun objectClass() = MQTTMessageBinding::class.java - override fun baseObjectJson() = "/json/binding/message/mqtt/mqttMessageBinding.json" + override fun baseObjectJson() = "/json/v2/binding/message/mqtt/mqttMessageBinding.json" - override fun extendedObjectJson() = "/json/binding/message/mqtt/mqttMessageBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/message/mqtt/mqttMessageBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/message/mqtt/mqttMessageBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/message/mqtt/mqttMessageBinding - wrongly extended.json" override fun build(): MQTTMessageBinding { return MQTTMessageBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/amqp/AMQPOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/amqp/AMQPOperationBindingTest.kt index e395644f..b62375d4 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/amqp/AMQPOperationBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/amqp/AMQPOperationBindingTest.kt @@ -6,11 +6,11 @@ class AMQPOperationBindingTest: SerDeTest() { override fun objectClass() = AMQPOperationBinding::class.java - override fun baseObjectJson() = "/json/binding/operation/amqp/amqpOperationBinding.json" + override fun baseObjectJson() = "/json/v2/binding/operation/amqp/amqpOperationBinding.json" - override fun extendedObjectJson() = "/json/binding/operation/amqp/amqpOperationBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/operation/amqp/amqpOperationBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/operation/amqp/amqpOperationBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/operation/amqp/amqpOperationBinding - wrongly extended.json" override fun build(): AMQPOperationBinding { return AMQPOperationBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/http/HTTPOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/http/HTTPOperationBindingTest.kt index 0b568a12..afe6cedd 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/http/HTTPOperationBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/http/HTTPOperationBindingTest.kt @@ -9,11 +9,11 @@ class HTTPOperationBindingTest: SerDeTest() { override fun objectClass() = HTTPOperationBinding::class.java - override fun baseObjectJson() = "/json/binding/operation/http/httpOperationBinding.json" + override fun baseObjectJson() = "/json/v2/binding/operation/http/httpOperationBinding.json" - override fun extendedObjectJson() = "/json/binding/operation/http/httpOperationBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/operation/http/httpOperationBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/operation/http/httpOperationBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/operation/http/httpOperationBinding - wrongly extended.json" override fun build(): HTTPOperationBinding { return HTTPOperationBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/kafka/KafkaOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/kafka/KafkaOperationBindingTest.kt index b32ea5e0..3fc84ea6 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/kafka/KafkaOperationBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/kafka/KafkaOperationBindingTest.kt @@ -8,11 +8,11 @@ class KafkaOperationBindingTest: SerDeTest() { override fun objectClass() = KafkaOperationBinding::class.java - override fun baseObjectJson() = "/json/binding/operation/kafka/kafkaOperationBinding.json" + override fun baseObjectJson() = "/json/v2/binding/operation/kafka/kafkaOperationBinding.json" - override fun extendedObjectJson() = "/json/binding/operation/kafka/kafkaOperationBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/operation/kafka/kafkaOperationBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json" override fun build(): KafkaOperationBinding { return KafkaOperationBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/mqtt/MQTTOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/mqtt/MQTTOperationBindingTest.kt index e0af0722..9bba70c1 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/mqtt/MQTTOperationBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/mqtt/MQTTOperationBindingTest.kt @@ -6,11 +6,11 @@ class MQTTOperationBindingTest: SerDeTest() { override fun objectClass() = MQTTOperationBinding::class.java - override fun baseObjectJson() = "/json/binding/operation/mqtt/mqttOperationBinding.json" + override fun baseObjectJson() = "/json/v2/binding/operation/mqtt/mqttOperationBinding.json" - override fun extendedObjectJson() = "/json/binding/operation/mqtt/mqttOperationBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/operation/mqtt/mqttOperationBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json" override fun build(): MQTTOperationBinding { return MQTTOperationBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/nats/NATSOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/nats/NATSOperationBindingTest.kt index cae3cb10..9c2991a6 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/nats/NATSOperationBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/nats/NATSOperationBindingTest.kt @@ -6,11 +6,11 @@ class NATSOperationBindingTest: SerDeTest() { override fun objectClass() = NATSOperationBinding::class.java - override fun baseObjectJson() = "/json/binding/operation/nats/natsOperationBinding.json" + override fun baseObjectJson() = "/json/v2/binding/operation/nats/natsOperationBinding.json" - override fun extendedObjectJson() = "/json/binding/operation/nats/natsOperationBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/operation/nats/natsOperationBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/operation/nats/natsOperationBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/operation/nats/natsOperationBinding - wrongly extended.json" override fun build(): NATSOperationBinding { return NATSOperationBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/solace/SolaceOperationBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/solace/SolaceOperationBindingTest.kt index f3afbf45..f62962ad 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/solace/SolaceOperationBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/operation/solace/SolaceOperationBindingTest.kt @@ -8,11 +8,11 @@ class SolaceOperationBindingTest: SerDeTest() { override fun objectClass() = SolaceOperationBinding::class.java - override fun baseObjectJson() = "/json/binding/operation/solace/solaceOperationBinding.json" + override fun baseObjectJson() = "/json/v2/binding/operation/solace/solaceOperationBinding.json" - override fun extendedObjectJson() = "/json/binding/operation/solace/solaceOperationBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/operation/solace/solaceOperationBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/operation/solace/solaceOperationBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/operation/solace/solaceOperationBinding - wrongly extended.json" override fun build(): SolaceOperationBinding { return SolaceOperationBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/ibmmq/IBMMQServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/ibmmq/IBMMQServerBindingTest.kt index 4f1aab9b..8c73a5ab 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/ibmmq/IBMMQServerBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/ibmmq/IBMMQServerBindingTest.kt @@ -10,11 +10,11 @@ class IBMMQServerBindingTest: SerDeTest() { override fun objectClass() = IBMMQServerBinding::class.java - override fun baseObjectJson() = "/json/binding/server/ibmmq/ibmmqServerBinding.json" + override fun baseObjectJson() = "/json/v2/binding/server/ibmmq/ibmmqServerBinding.json" - override fun extendedObjectJson() = "/json/binding/server/ibmmq/ibmmqServerBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/server/ibmmq/ibmmqServerBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json" override fun build(): IBMMQServerBinding { return IBMMQServerBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/kafka/KafkaServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/kafka/KafkaServerBindingTest.kt index 56a324bd..0e9910ce 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/kafka/KafkaServerBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/kafka/KafkaServerBindingTest.kt @@ -10,11 +10,11 @@ class KafkaServerBindingTest: SerDeTest() { override fun objectClass() = KafkaServerBinding::class.java - override fun baseObjectJson() = "/json/binding/server/kafka/kafkaServerBinding.json" + override fun baseObjectJson() = "/json/v2/binding/server/kafka/kafkaServerBinding.json" - override fun extendedObjectJson() = "/json/binding/server/kafka/kafkaServerBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/server/kafka/kafkaServerBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/server/kafka/kafkaServerBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/server/kafka/kafkaServerBinding - wrongly extended.json" override fun build(): KafkaServerBinding { return KafkaServerBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/mqtt/MQTTServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/mqtt/MQTTServerBindingTest.kt index 4023b197..de06a9eb 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/mqtt/MQTTServerBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/mqtt/MQTTServerBindingTest.kt @@ -10,11 +10,11 @@ class MQTTServerBindingTest: SerDeTest() { override fun objectClass() = MQTTServerBinding::class.java - override fun baseObjectJson() = "/json/binding/server/mqtt/mqttServerBinding.json" + override fun baseObjectJson() = "/json/v2/binding/server/mqtt/mqttServerBinding.json" - override fun extendedObjectJson() = "/json/binding/server/mqtt/mqttServerBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/server/mqtt/mqttServerBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/server/mqtt/mqttServerBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/server/mqtt/mqttServerBinding - wrongly extended.json" override fun build(): MQTTServerBinding { return MQTTServerBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/mqtt5/MQTT5ServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/mqtt5/MQTT5ServerBindingTest.kt index 88145034..a80e4af4 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/mqtt5/MQTT5ServerBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/mqtt5/MQTT5ServerBindingTest.kt @@ -10,11 +10,11 @@ class MQTT5ServerBindingTest: SerDeTest() { override fun objectClass() = MQTT5ServerBinding::class.java - override fun baseObjectJson() = "/json/binding/server/mqtt5/mqtt5ServerBinding.json" + override fun baseObjectJson() = "/json/v2/binding/server/mqtt5/mqtt5ServerBinding.json" - override fun extendedObjectJson() = "/json/binding/server/mqtt5/mqtt5ServerBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/server/mqtt5/mqtt5ServerBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json" override fun build(): MQTT5ServerBinding { return MQTT5ServerBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/pulsar/PulsarServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/pulsar/PulsarServerBindingTest.kt index d5ada220..869986ea 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/pulsar/PulsarServerBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/pulsar/PulsarServerBindingTest.kt @@ -10,11 +10,11 @@ class PulsarServerBindingTest: SerDeTest() { override fun objectClass() = PulsarServerBinding::class.java - override fun baseObjectJson() = "/json/binding/server/pulsar/pulsarServerBinding.json" + override fun baseObjectJson() = "/json/v2/binding/server/pulsar/pulsarServerBinding.json" - override fun extendedObjectJson() = "/json/binding/server/pulsar/pulsarServerBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/server/pulsar/pulsarServerBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/server/pulsar/pulsarServerBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/server/pulsar/pulsarServerBinding - wrongly extended.json" override fun build(): PulsarServerBinding { return PulsarServerBinding.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/solace/SolaceServerBindingTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/solace/SolaceServerBindingTest.kt index 4e4d1244..f02c7394 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/solace/SolaceServerBindingTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/binding/server/solace/SolaceServerBindingTest.kt @@ -10,11 +10,11 @@ class SolaceServerBindingTest: SerDeTest() { override fun objectClass() = SolaceServerBinding::class.java - override fun baseObjectJson() = "/json/binding/server/solace/solaceServerBinding.json" + override fun baseObjectJson() = "/json/v2/binding/server/solace/solaceServerBinding.json" - override fun extendedObjectJson() = "/json/binding/server/solace/solaceServerBinding - extended.json" + override fun extendedObjectJson() = "/json/v2/binding/server/solace/solaceServerBinding - extended.json" - override fun wronglyExtendedObjectJson() = "/json/binding/server/solace/solaceServerBinding - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/binding/server/solace/solaceServerBinding - wrongly extended.json" override fun build(): SolaceServerBinding { return SolaceServerBinding.builder() diff --git a/asyncapi-core/src/test/resources/json/binding/channel/amqp/amqpChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/amqp/amqpChannelBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/amqp/amqpChannelBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/amqp/amqpChannelBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/amqp/amqpChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/amqp/amqpChannelBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/amqp/amqpChannelBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/amqp/amqpChannelBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/amqp/amqpChannelBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/amqp/amqpChannelBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/amqp/amqpChannelBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/amqp/amqpChannelBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/anypoint/anypointMQChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/anypoint/anypointMQChannelBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/anypoint/anypointMQChannelBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/anypoint/anypointMQChannelBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/anypoint/anypointMQChannelBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/anypoint/anypointMQChannelBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/anypoint/anypointMQChannelBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/anypoint/anypointMQChannelBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/anypoint/anypointMQChannelBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/googlepubsub/googlePubSubChannelBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/googlepubsub/googlePubSubChannelBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/googlepubsub/googlePubSubChannelBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/googlepubsub/googlePubSubChannelBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/googlepubsub/googlePubSubChannelBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/googlepubsub/googlePubSubChannelBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/ibmmq/ibmMQChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/ibmmq/ibmMQChannelBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/ibmmq/ibmMQChannelBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/ibmmq/ibmMQChannelBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/ibmmq/ibmMQChannelBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/ibmmq/ibmMQChannelBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/ibmmq/ibmMQChannelBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/ibmmq/ibmMQChannelBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/ibmmq/ibmMQChannelBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/kafka/kafkaChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/kafka/kafkaChannelBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/kafka/kafkaChannelBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/kafka/kafkaChannelBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/kafka/kafkaChannelBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/kafka/kafkaChannelBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/kafka/kafkaChannelBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/kafka/kafkaChannelBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/kafka/kafkaChannelBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/pulsar/pulsarChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/pulsar/pulsarChannelBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/pulsar/pulsarChannelBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/pulsar/pulsarChannelBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/pulsar/pulsarChannelBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/pulsar/pulsarChannelBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/pulsar/pulsarChannelBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/pulsar/pulsarChannelBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/pulsar/pulsarChannelBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/ws/webSocketsChannelBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/ws/webSocketsChannelBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/ws/webSocketsChannelBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/ws/webSocketsChannelBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/ws/webSocketsChannelBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/channel/ws/webSocketsChannelBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/channel/ws/webSocketsChannelBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/channel/ws/webSocketsChannelBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/channel/ws/webSocketsChannelBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/amqp/amqpMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/amqp/amqpMessageBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/amqp/amqpMessageBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/amqp/amqpMessageBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/amqp/amqpMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/amqp/amqpMessageBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/amqp/amqpMessageBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/amqp/amqpMessageBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/amqp/amqpMessageBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/message/amqp/amqpMessageBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/amqp/amqpMessageBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/amqp/amqpMessageBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/anypointmq/anypointMQMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/anypointmq/anypointMQMessageBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/anypointmq/anypointMQMessageBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/anypointmq/anypointMQMessageBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/anypointmq/anypointMQMessageBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/anypointmq/anypointMQMessageBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/message/anypointmq/anypointMQMessageBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/anypointmq/anypointMQMessageBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/anypointmq/anypointMQMessageBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/googlepubsub/googlePubSubMessageBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/googlepubsub/googlePubSubMessageBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/googlepubsub/googlePubSubMessageBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/message/googlepubsub/googlePubSubMessageBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/googlepubsub/googlePubSubMessageBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/googlepubsub/googlePubSubMessageBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/http/httpMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/http/httpMessageBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/http/httpMessageBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/http/httpMessageBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/http/httpMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/http/httpMessageBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/http/httpMessageBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/http/httpMessageBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/http/httpMessageBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/message/http/httpMessageBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/http/httpMessageBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/http/httpMessageBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/ibmmq/ibmMQMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/ibmmq/ibmMQMessageBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/ibmmq/ibmMQMessageBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/ibmmq/ibmMQMessageBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/ibmmq/ibmMQMessageBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/ibmmq/ibmMQMessageBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/message/ibmmq/ibmMQMessageBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/ibmmq/ibmMQMessageBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/ibmmq/ibmMQMessageBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/kafka/kafkaMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/kafka/kafkaMessageBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/kafka/kafkaMessageBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/kafka/kafkaMessageBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/kafka/kafkaMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/kafka/kafkaMessageBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/kafka/kafkaMessageBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/kafka/kafkaMessageBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/kafka/kafkaMessageBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/message/kafka/kafkaMessageBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/kafka/kafkaMessageBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/kafka/kafkaMessageBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/mqtt/mqttMessageBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/mqtt/mqttMessageBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/mqtt/mqttMessageBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/mqtt/mqttMessageBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/mqtt/mqttMessageBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/message/mqtt/mqttMessageBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/mqtt/mqttMessageBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/mqtt/mqttMessageBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/message/mqtt/mqttMessageBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/message/mqtt/mqttMessageBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/message/mqtt/mqttMessageBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/message/mqtt/mqttMessageBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/amqp/amqpOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/amqp/amqpOperationBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/amqp/amqpOperationBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/amqp/amqpOperationBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/amqp/amqpOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/amqp/amqpOperationBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/amqp/amqpOperationBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/amqp/amqpOperationBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/amqp/amqpOperationBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/amqp/amqpOperationBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/amqp/amqpOperationBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/amqp/amqpOperationBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/http/httpOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/http/httpOperationBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/http/httpOperationBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/http/httpOperationBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/http/httpOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/http/httpOperationBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/http/httpOperationBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/http/httpOperationBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/http/httpOperationBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/http/httpOperationBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/http/httpOperationBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/http/httpOperationBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/kafka/kafkaOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/kafka/kafkaOperationBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/kafka/kafkaOperationBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/kafka/kafkaOperationBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/kafka/kafkaOperationBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/kafka/kafkaOperationBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/kafka/kafkaOperationBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/kafka/kafkaOperationBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/kafka/kafkaOperationBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/mqtt/mqttOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/mqtt/mqttOperationBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/mqtt/mqttOperationBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/mqtt/mqttOperationBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/mqtt/mqttOperationBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/mqtt/mqttOperationBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/mqtt/mqttOperationBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/mqtt/mqttOperationBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/mqtt/mqttOperationBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/nats/natsOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/nats/natsOperationBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/nats/natsOperationBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/nats/natsOperationBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/nats/natsOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/nats/natsOperationBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/nats/natsOperationBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/nats/natsOperationBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/nats/natsOperationBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/nats/natsOperationBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/nats/natsOperationBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/nats/natsOperationBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/solace/solaceOperationBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/solace/solaceOperationBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/solace/solaceOperationBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/solace/solaceOperationBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/solace/solaceOperationBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/solace/solaceOperationBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/solace/solaceOperationBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/solace/solaceOperationBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/operation/solace/solaceOperationBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/operation/solace/solaceOperationBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/operation/solace/solaceOperationBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/operation/solace/solaceOperationBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/ibmmq/ibmmqServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/ibmmq/ibmmqServerBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/ibmmq/ibmmqServerBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/ibmmq/ibmmqServerBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/ibmmq/ibmmqServerBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/ibmmq/ibmmqServerBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/server/ibmmq/ibmmqServerBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/ibmmq/ibmmqServerBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/ibmmq/ibmmqServerBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/kafka/kafkaServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/kafka/kafkaServerBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/kafka/kafkaServerBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/kafka/kafkaServerBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/kafka/kafkaServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/kafka/kafkaServerBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/kafka/kafkaServerBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/kafka/kafkaServerBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/kafka/kafkaServerBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/server/kafka/kafkaServerBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/kafka/kafkaServerBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/kafka/kafkaServerBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/mqtt/mqttServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/mqtt/mqttServerBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/mqtt/mqttServerBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/mqtt/mqttServerBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/mqtt/mqttServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/mqtt/mqttServerBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/mqtt/mqttServerBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/mqtt/mqttServerBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/mqtt/mqttServerBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/server/mqtt/mqttServerBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/mqtt/mqttServerBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/mqtt/mqttServerBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/mqtt5/mqtt5ServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/mqtt5/mqtt5ServerBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/mqtt5/mqtt5ServerBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/mqtt5/mqtt5ServerBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/mqtt5/mqtt5ServerBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/mqtt5/mqtt5ServerBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/server/mqtt5/mqtt5ServerBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/mqtt5/mqtt5ServerBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/mqtt5/mqtt5ServerBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/pulsar/pulsarServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/pulsar/pulsarServerBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/pulsar/pulsarServerBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/pulsar/pulsarServerBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/pulsar/pulsarServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/pulsar/pulsarServerBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/pulsar/pulsarServerBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/pulsar/pulsarServerBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/pulsar/pulsarServerBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/server/pulsar/pulsarServerBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/pulsar/pulsarServerBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/pulsar/pulsarServerBinding.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/solace/solaceServerBinding - extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/solace/solaceServerBinding - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/solace/solaceServerBinding - extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/solace/solaceServerBinding - extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/solace/solaceServerBinding - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/binding/server/solace/solaceServerBinding - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/solace/solaceServerBinding - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/solace/solaceServerBinding - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/binding/server/solace/solaceServerBinding.json b/asyncapi-core/src/test/resources/json/v2/binding/server/solace/solaceServerBinding.json similarity index 100% rename from asyncapi-core/src/test/resources/json/binding/server/solace/solaceServerBinding.json rename to asyncapi-core/src/test/resources/json/v2/binding/server/solace/solaceServerBinding.json From 944f338bdcbceb27b7c8d34a4a720e2d853731e2 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Fri, 6 Oct 2023 00:02:19 +0400 Subject: [PATCH 53/54] refactor(tests): new location for 2.0.0 test resources --- .../com/asyncapi/v2/_0_0/model/AsyncAPITest.kt | 6 +++--- .../v2/_0_0/model/ExternalDocumentationTest.kt | 6 +++--- .../com/asyncapi/v2/_0_0/model/ReferenceTest.kt | 2 +- .../kotlin/com/asyncapi/v2/_0_0/model/TagTest.kt | 6 +++--- .../v2/_0_0/model/channel/ChannelItemTest.kt | 6 +++--- .../asyncapi/v2/_0_0/model/channel/ParameterTest.kt | 6 +++--- .../_0_0/model/channel/message/CorrelationIdTest.kt | 6 +++--- .../v2/_0_0/model/channel/message/MessageTest.kt | 6 +++--- .../_0_0/model/channel/message/MessageTraitTest.kt | 6 +++--- .../v2/_0_0/model/channel/operation/OperationTest.kt | 12 ++++++------ .../model/channel/operation/OperationTraitTest.kt | 6 +++--- .../v2/_0_0/model/component/ComponentsTest.kt | 6 +++--- .../com/asyncapi/v2/_0_0/model/info/ContactTest.kt | 6 +++--- .../com/asyncapi/v2/_0_0/model/info/InfoTest.kt | 6 +++--- .../com/asyncapi/v2/_0_0/model/info/LicenseTest.kt | 6 +++--- .../com/asyncapi/v2/_0_0/model/server/ServerTest.kt | 6 +++--- .../v2/_0_0/model/server/ServerVariableTest.kt | 6 +++--- .../{ => v2}/2.0.0/model/asyncapi - extended.json | 0 .../2.0.0/model/asyncapi - wrongly extended.json | 0 .../json/{ => v2}/2.0.0/model/asyncapi.json | 0 .../json/{ => v2}/2.0.0/model/channel/channel.json | 0 .../2.0.0/model/channel/channelItem - extended.json | 0 .../channel/channelItem - wrongly extended.json | 0 .../{ => v2}/2.0.0/model/channel/channelItem.json | 0 .../channel/message/correlationId - extended.json | 0 .../message/correlationId - wrongly extended.json | 0 .../2.0.0/model/channel/message/correlationId.json | 0 .../model/channel/message/message - extended.json | 0 .../channel/message/message - wrongly extended.json | 0 .../2.0.0/model/channel/message/message.json | 0 .../channel/message/messageTrait - extended.json | 0 .../message/messageTrait - wrongly extended.json | 0 .../2.0.0/model/channel/message/messageTrait.json | 0 .../operation/operation with message - extended.json | 0 .../operation with message - wrongly extended.json | 0 .../channel/operation/operation with message.json | 0 ...eration with reference to message - extended.json | 0 ...with reference to message - wrongly extended.json | 0 .../operation with reference to message.json | 0 .../channel/operation/operationTrait - extended.json | 0 .../operation/operationTrait - wrongly extended.json | 0 .../model/channel/operation/operationTrait.json | 0 .../2.0.0/model/channel/parameter - extended.json | 0 .../model/channel/parameter - wrongly extended.json | 0 .../json/{ => v2}/2.0.0/model/channel/parameter.json | 0 .../model/components/components - extended.json | 0 .../components/components - wrongly extended.json | 0 .../{ => v2}/2.0.0/model/components/components.json | 0 .../model/externalDocumentation - extended.json | 0 .../externalDocumentation - wrongly extended.json | 0 .../{ => v2}/2.0.0/model/externalDocumentation.json | 0 .../2.0.0/model/info/contact - extended.json | 0 .../2.0.0/model/info/contact - wrongly extended.json | 0 .../json/{ => v2}/2.0.0/model/info/contact.json | 0 .../{ => v2}/2.0.0/model/info/info - extended.json | 0 .../2.0.0/model/info/info - wrongly extended.json | 0 .../json/{ => v2}/2.0.0/model/info/info.json | 0 .../2.0.0/model/info/license - extended.json | 0 .../2.0.0/model/info/license - wrongly extended.json | 0 .../json/{ => v2}/2.0.0/model/info/license.json | 0 .../json/{ => v2}/2.0.0/model/reference.json | 0 .../2.0.0/model/server/server - extended.json | 0 .../model/server/server - wrongly extended.json | 0 .../json/{ => v2}/2.0.0/model/server/server.json | 0 .../model/server/serverVariable - extended.json | 0 .../server/serverVariable - wrongly extended.json | 0 .../{ => v2}/2.0.0/model/server/serverVariable.json | 0 .../json/{ => v2}/2.0.0/model/tag - extended.json | 0 .../{ => v2}/2.0.0/model/tag - wrongly extended.json | 0 .../resources/json/{ => v2}/2.0.0/model/tag.json | 0 70 files changed, 52 insertions(+), 52 deletions(-) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/asyncapi - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/asyncapi - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/asyncapi.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/channel.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/channelItem - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/channelItem - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/channelItem.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/message/correlationId - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/message/correlationId - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/message/correlationId.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/message/message - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/message/message - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/message/message.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/message/messageTrait - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/message/messageTrait - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/message/messageTrait.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/operation/operation with message - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/operation/operation with message - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/operation/operation with message.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/operation/operation with reference to message - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/operation/operation with reference to message - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/operation/operation with reference to message.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/operation/operationTrait - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/operation/operationTrait - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/operation/operationTrait.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/parameter - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/parameter - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/channel/parameter.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/components/components - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/components/components - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/components/components.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/externalDocumentation - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/externalDocumentation - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/externalDocumentation.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/info/contact - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/info/contact - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/info/contact.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/info/info - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/info/info - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/info/info.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/info/license - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/info/license - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/info/license.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/reference.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/server/server - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/server/server - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/server/server.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/server/serverVariable - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/server/serverVariable - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/server/serverVariable.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/tag - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/tag - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.0.0/model/tag.json (100%) diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/AsyncAPITest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/AsyncAPITest.kt index dcc8e411..ea9fd0c1 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/AsyncAPITest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/AsyncAPITest.kt @@ -13,11 +13,11 @@ class AsyncAPITest: SerDeTest() { override fun objectClass() = AsyncAPI::class.java - override fun baseObjectJson() = "/json/2.0.0/model/asyncapi.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/asyncapi.json" - override fun extendedObjectJson() = "/json/2.0.0/model/asyncapi - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/asyncapi - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/asyncapi - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/asyncapi - wrongly extended.json" override fun build(): AsyncAPI { return AsyncAPI( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/ExternalDocumentationTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/ExternalDocumentationTest.kt index f1951086..c6b51a18 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/ExternalDocumentationTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/ExternalDocumentationTest.kt @@ -9,11 +9,11 @@ class ExternalDocumentationTest: SerDeTest() { override fun objectClass() = ExternalDocumentation::class.java - override fun baseObjectJson() = "/json/2.0.0/model/externalDocumentation.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/externalDocumentation.json" - override fun extendedObjectJson() = "/json/2.0.0/model/externalDocumentation - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/externalDocumentation - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/externalDocumentation - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/externalDocumentation - wrongly extended.json" override fun build(): ExternalDocumentation { return ExternalDocumentation( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/ReferenceTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/ReferenceTest.kt index 5620f4c6..e5075e24 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/ReferenceTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/ReferenceTest.kt @@ -14,7 +14,7 @@ class ReferenceTest { @Test @DisplayName("Compare hand crafted model with parsed json") fun compareModelWithParsedJson() { - val model = ClasspathUtils.readAsString("/json/2.0.0/model/reference.json") + val model = ClasspathUtils.readAsString("/json/v2/2.0.0/model/reference.json") Assertions.assertEquals( objectMapper.readValue(model, Reference::class.java), diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/TagTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/TagTest.kt index c700d28f..9e44b483 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/TagTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/TagTest.kt @@ -9,11 +9,11 @@ class TagTest: SerDeTest() { override fun objectClass() = Tag::class.java - override fun baseObjectJson() = "/json/2.0.0/model/tag.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/tag.json" - override fun extendedObjectJson() = "/json/2.0.0/model/tag - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/tag - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/tag - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/tag - wrongly extended.json" override fun build(): Tag { return Tag( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/ChannelItemTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/ChannelItemTest.kt index 8f6b7322..64d42f9a 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/ChannelItemTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/ChannelItemTest.kt @@ -29,11 +29,11 @@ class ChannelItemTest: SerDeTest() { override fun objectClass() = ChannelItem::class.java - override fun baseObjectJson() = "/json/2.0.0/model/channel/channelItem.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/channel/channelItem.json" - override fun extendedObjectJson() = "/json/2.0.0/model/channel/channelItem - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/channel/channelItem - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/channel/channelItem - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/channel/channelItem - wrongly extended.json" override fun build(): ChannelItem { val subscribe = OperationWithReferenceToMessageTest().build() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/ParameterTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/ParameterTest.kt index c6e0ebb6..d0fb8dfa 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/ParameterTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/ParameterTest.kt @@ -10,11 +10,11 @@ class ParameterTest: SerDeTest() { override fun objectClass() = Parameter::class.java - override fun baseObjectJson() = "/json/2.0.0/model/channel/parameter.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/channel/parameter.json" - override fun extendedObjectJson() = "/json/2.0.0/model/channel/parameter - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/channel/parameter - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/channel/parameter - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/channel/parameter - wrongly extended.json" override fun build(): Parameter { return Parameter.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/CorrelationIdTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/CorrelationIdTest.kt index 472764f2..ec179bdc 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/CorrelationIdTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/CorrelationIdTest.kt @@ -9,11 +9,11 @@ class CorrelationIdTest: SerDeTest() { override fun objectClass() = CorrelationId::class.java - override fun baseObjectJson() = "/json/2.0.0/model/channel/message/correlationId.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/channel/message/correlationId.json" - override fun extendedObjectJson() = "/json/2.0.0/model/channel/message/correlationId - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/channel/message/correlationId - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/channel/message/correlationId - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/channel/message/correlationId - wrongly extended.json" override fun build(): CorrelationId { return CorrelationId.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/MessageTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/MessageTest.kt index cf119d6d..bf0043dd 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/MessageTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/MessageTest.kt @@ -33,11 +33,11 @@ class MessageTest: SerDeTest() { override fun objectClass() = Message::class.java - override fun baseObjectJson() = "/json/2.0.0/model/channel/message/message.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/channel/message/message.json" - override fun extendedObjectJson() = "/json/2.0.0/model/channel/message/message - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/channel/message/message - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/channel/message/message - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/channel/message/message - wrongly extended.json" override fun build(): Message { return Message.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/MessageTraitTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/MessageTraitTest.kt index 05d5d666..359fd0e4 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/MessageTraitTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/message/MessageTraitTest.kt @@ -31,11 +31,11 @@ class MessageTraitTest: SerDeTest() { override fun objectClass() = MessageTrait::class.java - override fun baseObjectJson() = "/json/2.0.0/model/channel/message/messageTrait.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/channel/message/messageTrait.json" - override fun extendedObjectJson() = "/json/2.0.0/model/channel/message/messageTrait - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/channel/message/messageTrait - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/channel/message/messageTrait - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/channel/message/messageTrait - wrongly extended.json" override fun build(): MessageTrait { return MessageTrait.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/operation/OperationTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/operation/OperationTest.kt index 041055ed..470e1b24 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/operation/OperationTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/operation/OperationTest.kt @@ -33,11 +33,11 @@ class OperationWithReferenceToMessageTest: SerDeTest() { override fun objectClass() = Operation::class.java - override fun baseObjectJson() = "/json/2.0.0/model/channel/operation/operation with reference to message.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/channel/operation/operation with reference to message.json" - override fun extendedObjectJson() = "/json/2.0.0/model/channel/operation/operation with reference to message - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/channel/operation/operation with reference to message - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/channel/operation/operation with reference to message - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/channel/operation/operation with reference to message - wrongly extended.json" override fun build(): Operation { return Operation.builder() @@ -67,11 +67,11 @@ class OperationWithMessageTest: SerDeTest() { override fun objectClass() = Operation::class.java - override fun baseObjectJson() = "/json/2.0.0/model/channel/operation/operation with message.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/channel/operation/operation with message.json" - override fun extendedObjectJson() = "/json/2.0.0/model/channel/operation/operation with message - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/channel/operation/operation with message - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/channel/operation/operation with message - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/channel/operation/operation with message - wrongly extended.json" override fun build(): Operation { return Operation.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/operation/OperationTraitTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/operation/OperationTraitTest.kt index 01d0400f..39eee0b2 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/operation/OperationTraitTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/channel/operation/OperationTraitTest.kt @@ -30,11 +30,11 @@ class OperationTraitTest: SerDeTest() { override fun objectClass() = OperationTrait::class.java - override fun baseObjectJson() = "/json/2.0.0/model/channel/operation/operationTrait.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/channel/operation/operationTrait.json" - override fun extendedObjectJson() = "/json/2.0.0/model/channel/operation/operationTrait - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/channel/operation/operationTrait - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/channel/operation/operationTrait - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/channel/operation/operationTrait - wrongly extended.json" override fun build(): OperationTrait { return OperationTrait.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/component/ComponentsTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/component/ComponentsTest.kt index 3a3eb3c5..630ef078 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/component/ComponentsTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/component/ComponentsTest.kt @@ -26,11 +26,11 @@ class ComponentsTest: SerDeTest() { override fun objectClass() = Components::class.java - override fun baseObjectJson() = "/json/2.0.0/model/components/components.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/components/components.json" - override fun extendedObjectJson() = "/json/2.0.0/model/components/components - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/components/components - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/components/components - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/components/components - wrongly extended.json" override fun build(): Components { return Components.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/ContactTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/ContactTest.kt index 1bbe0338..8246489a 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/ContactTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/ContactTest.kt @@ -9,11 +9,11 @@ class ContactTest: SerDeTest() { override fun objectClass() = Contact::class.java - override fun baseObjectJson() = "/json/2.0.0/model/info/contact.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/info/contact.json" - override fun extendedObjectJson() = "/json/2.0.0/model/info/contact - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/info/contact - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/info/contact - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/info/contact - wrongly extended.json" override fun build(): Contact { return Contact( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/InfoTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/InfoTest.kt index 2dbb390d..54e284e1 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/InfoTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/InfoTest.kt @@ -9,11 +9,11 @@ class InfoTest: SerDeTest() { override fun objectClass() = Info::class.java - override fun baseObjectJson() = "/json/2.0.0/model/info/info.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/info/info.json" - override fun extendedObjectJson() = "/json/2.0.0/model/info/info - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/info/info - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/info/info - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/info/info - wrongly extended.json" override fun build(): Info { return Info( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/LicenseTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/LicenseTest.kt index c3267640..cbb6a3d5 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/LicenseTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/info/LicenseTest.kt @@ -9,11 +9,11 @@ class LicenseTest: SerDeTest() { override fun objectClass() = License::class.java - override fun baseObjectJson() = "/json/2.0.0/model/info/license.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/info/license.json" - override fun extendedObjectJson() = "/json/2.0.0/model/info/license - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/info/license - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/info/license - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/info/license - wrongly extended.json" override fun build(): License { return License( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/server/ServerTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/server/ServerTest.kt index 612bf7c0..a975182e 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/server/ServerTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/server/ServerTest.kt @@ -29,11 +29,11 @@ class ServerTest: SerDeTest() { override fun objectClass() = Server::class.java - override fun baseObjectJson() = "/json/2.0.0/model/server/server.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/server/server.json" - override fun extendedObjectJson() = "/json/2.0.0/model/server/server - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/server/server - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/server/server - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/server/server - wrongly extended.json" override fun build(): Server { return Server.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/server/ServerVariableTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/server/ServerVariableTest.kt index 2b3dbd5e..924a834f 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/server/ServerVariableTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_0_0/model/server/ServerVariableTest.kt @@ -10,11 +10,11 @@ class ServerVariableTest: SerDeTest() { override fun objectClass() = ServerVariable::class.java - override fun baseObjectJson() = "/json/2.0.0/model/server/serverVariable.json" + override fun baseObjectJson() = "/json/v2/2.0.0/model/server/serverVariable.json" - override fun extendedObjectJson() = "/json/2.0.0/model/server/serverVariable - extended.json" + override fun extendedObjectJson() = "/json/v2/2.0.0/model/server/serverVariable - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.0.0/model/server/serverVariable - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.0.0/model/server/serverVariable - wrongly extended.json" override fun build(): ServerVariable { return ServerVariable.builder() diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/asyncapi - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/asyncapi - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/asyncapi - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/asyncapi - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/asyncapi - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/asyncapi - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/asyncapi - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/asyncapi - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/asyncapi.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/asyncapi.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/asyncapi.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/asyncapi.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/channel.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/channel.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/channel.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/channel.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/channelItem - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/channelItem - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/channelItem - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/channelItem - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/channelItem - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/channelItem - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/channelItem - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/channelItem - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/channelItem.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/channelItem.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/channelItem.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/channelItem.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/correlationId - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/correlationId - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/correlationId - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/correlationId - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/correlationId - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/correlationId - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/correlationId - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/correlationId - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/correlationId.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/correlationId.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/correlationId.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/correlationId.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/message - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/message - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/message - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/message - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/message - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/message - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/message - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/message - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/message.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/message.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/message.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/message.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/messageTrait - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/messageTrait - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/messageTrait - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/messageTrait - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/messageTrait - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/messageTrait - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/messageTrait - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/messageTrait - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/messageTrait.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/messageTrait.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/message/messageTrait.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/message/messageTrait.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with message - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with message - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with message - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with message - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with message - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with message - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with message - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with message - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with message.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with message.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with message.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with message.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with reference to message - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with reference to message - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with reference to message - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with reference to message - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with reference to message - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with reference to message - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with reference to message - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with reference to message - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with reference to message.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with reference to message.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operation with reference to message.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operation with reference to message.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operationTrait - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operationTrait - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operationTrait - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operationTrait - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operationTrait - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operationTrait - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operationTrait - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operationTrait - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operationTrait.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operationTrait.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/operation/operationTrait.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/operation/operationTrait.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/parameter - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/parameter - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/parameter - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/parameter - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/parameter - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/parameter - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/parameter - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/parameter - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/channel/parameter.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/parameter.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/channel/parameter.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/channel/parameter.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/components/components - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/components/components - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/components/components - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/components/components - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/components/components - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/components/components - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/components/components - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/components/components - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/components/components.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/components/components.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/components/components.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/components/components.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/externalDocumentation - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/externalDocumentation - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/externalDocumentation - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/externalDocumentation - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/externalDocumentation - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/externalDocumentation - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/externalDocumentation - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/externalDocumentation - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/externalDocumentation.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/externalDocumentation.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/externalDocumentation.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/externalDocumentation.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/info/contact - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/contact - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/info/contact - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/contact - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/info/contact - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/contact - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/info/contact - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/contact - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/info/contact.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/contact.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/info/contact.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/contact.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/info/info - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/info - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/info/info - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/info - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/info/info - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/info - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/info/info - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/info - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/info/info.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/info.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/info/info.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/info.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/info/license - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/license - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/info/license - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/license - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/info/license - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/license - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/info/license - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/license - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/info/license.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/license.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/info/license.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/info/license.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/reference.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/reference.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/reference.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/reference.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/server/server - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/server - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/server/server - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/server - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/server/server - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/server - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/server/server - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/server - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/server/server.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/server.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/server/server.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/server.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/server/serverVariable - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/serverVariable - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/server/serverVariable - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/serverVariable - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/server/serverVariable - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/serverVariable - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/server/serverVariable - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/serverVariable - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/server/serverVariable.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/serverVariable.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/server/serverVariable.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/server/serverVariable.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/tag - extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/tag - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/tag - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/tag - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/tag - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/tag - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/tag - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/tag - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.0.0/model/tag.json b/asyncapi-core/src/test/resources/json/v2/2.0.0/model/tag.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.0.0/model/tag.json rename to asyncapi-core/src/test/resources/json/v2/2.0.0/model/tag.json From d61c3f989de9c37fad8f615808d3e59a8cda900a Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Fri, 6 Oct 2023 00:09:00 +0400 Subject: [PATCH 54/54] refactor(tests): new location for 2.6.0 test resources --- .../com/asyncapi/v2/_6_0/model/AsyncAPITest.kt | 6 +++--- .../v2/_6_0/model/ExternalDocumentationTest.kt | 6 +++--- .../asyncapi/v2/_6_0/model/ReferenceTest.kt | 2 +- .../com/asyncapi/v2/_6_0/model/TagTest.kt | 6 +++--- .../v2/_6_0/model/channel/ChannelItemTest.kt | 6 +++--- .../v2/_6_0/model/channel/ParameterTest.kt | 12 ++++++------ .../model/channel/message/CorrelationIdTest.kt | 6 +++--- .../channel/message/MessageExampleTest.kt | 6 +++--- .../_6_0/model/channel/message/MessageTest.kt | 6 +++--- .../model/channel/message/MessageTraitTest.kt | 6 +++--- .../model/channel/message/OneOfMessagesTest.kt | 2 +- .../model/channel/operation/OperationTest.kt | 18 +++++++++--------- .../channel/operation/OperationTraitTest.kt | 6 +++--- .../v2/_6_0/model/component/ComponentsTest.kt | 6 +++--- .../asyncapi/v2/_6_0/model/info/ContactTest.kt | 6 +++--- .../asyncapi/v2/_6_0/model/info/InfoTest.kt | 6 +++--- .../asyncapi/v2/_6_0/model/info/LicenseTest.kt | 6 +++--- .../v2/_6_0/model/server/ServerTest.kt | 6 +++--- .../v2/_6_0/model/server/ServerVariableTest.kt | 6 +++--- .../2.6.0/model/asyncapi - extended.json | 0 .../model/asyncapi - wrongly extended.json | 0 .../json/{ => v2}/2.6.0/model/asyncapi.json | 0 .../model/channel/channelItem - extended.json | 0 .../channelItem - wrongly extended.json | 0 .../2.6.0/model/channel/channelItem.json | 0 .../message/correlationId - extended.json | 0 .../correlationId - wrongly extended.json | 0 .../model/channel/message/correlationId.json | 0 .../channel/message/message - extended.json | 0 .../message/message - wrongly extended.json | 0 .../2.6.0/model/channel/message/message.json | 0 .../message/messageExample - extended.json | 0 .../messageExample - wrongly extended.json | 0 .../model/channel/message/messageExample.json | 0 .../message/messageTrait - extended.json | 0 .../messageTrait - wrongly extended.json | 0 .../model/channel/message/messageTrait.json | 0 .../model/channel/message/oneOfMessages.json | 0 .../operation with message - extended.json | 0 ...ration with message - wrongly extended.json | 0 .../operation/operation with message.json | 0 ...peration with oneOf message - extended.json | 0 ... with oneOf message - wrongly extended.json | 0 .../operation with oneOf message.json | 0 ...n with reference to message - extended.json | 0 ...eference to message - wrongly extended.json | 0 .../operation with reference to message.json | 0 .../operation/operationTrait - extended.json | 0 .../operationTrait - wrongly extended.json | 0 .../channel/operation/operationTrait.json | 0 ...er with reference to schema - extended.json | 0 ...reference to schema - wrongly extended.json | 0 .../parameter with reference to schema.json | 0 .../parameter with schema - extended.json | 0 ...rameter with schema - wrongly extended.json | 0 .../model/channel/parameter with schema.json | 0 .../components/components - extended.json | 0 .../components - wrongly extended.json | 0 .../2.6.0/model/components/components.json | 0 .../externalDocumentation - extended.json | 0 ...ternalDocumentation - wrongly extended.json | 0 .../2.6.0/model/externalDocumentation.json | 0 .../2.6.0/model/info/contact - extended.json | 0 .../model/info/contact - wrongly extended.json | 0 .../{ => v2}/2.6.0/model/info/contact.json | 0 .../2.6.0/model/info/info - extended.json | 0 .../model/info/info - wrongly extended.json | 0 .../json/{ => v2}/2.6.0/model/info/info.json | 0 .../2.6.0/model/info/license - extended.json | 0 .../model/info/license - wrongly extended.json | 0 .../{ => v2}/2.6.0/model/info/license.json | 0 .../json/{ => v2}/2.6.0/model/reference.json | 0 .../2.6.0/model/server/server - extended.json | 0 .../server/server - wrongly extended.json | 0 .../{ => v2}/2.6.0/model/server/server.json | 0 .../server/serverVariable - extended.json | 0 .../serverVariable - wrongly extended.json | 0 .../2.6.0/model/server/serverVariable.json | 0 .../{ => v2}/2.6.0/model/tag - extended.json | 0 .../2.6.0/model/tag - wrongly extended.json | 0 .../json/{ => v2}/2.6.0/model/tag.json | 0 81 files changed, 62 insertions(+), 62 deletions(-) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/asyncapi - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/asyncapi - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/asyncapi.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/channelItem - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/channelItem - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/channelItem.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/correlationId - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/correlationId - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/correlationId.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/message - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/message - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/message.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/messageExample - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/messageExample - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/messageExample.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/messageTrait - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/messageTrait - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/messageTrait.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/message/oneOfMessages.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operation with message - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operation with message - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operation with message.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operation with oneOf message - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operation with oneOf message - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operation with oneOf message.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operation with reference to message - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operation with reference to message - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operation with reference to message.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operationTrait - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operationTrait - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/operation/operationTrait.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/parameter with reference to schema - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/parameter with reference to schema - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/parameter with reference to schema.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/parameter with schema - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/parameter with schema - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/channel/parameter with schema.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/components/components - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/components/components - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/components/components.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/externalDocumentation - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/externalDocumentation - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/externalDocumentation.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/info/contact - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/info/contact - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/info/contact.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/info/info - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/info/info - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/info/info.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/info/license - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/info/license - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/info/license.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/reference.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/server/server - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/server/server - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/server/server.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/server/serverVariable - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/server/serverVariable - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/server/serverVariable.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/tag - extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/tag - wrongly extended.json (100%) rename asyncapi-core/src/test/resources/json/{ => v2}/2.6.0/model/tag.json (100%) diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/AsyncAPITest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/AsyncAPITest.kt index 55e7e061..57300656 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/AsyncAPITest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/AsyncAPITest.kt @@ -14,11 +14,11 @@ class AsyncAPITest: SerDeTest() { override fun objectClass() = AsyncAPI::class.java - override fun baseObjectJson() = "/json/2.6.0/model/asyncapi.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/asyncapi.json" - override fun extendedObjectJson() = "/json/2.6.0/model/asyncapi - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/asyncapi - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/asyncapi - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/asyncapi - wrongly extended.json" override fun build(): AsyncAPI { return AsyncAPI( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/ExternalDocumentationTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/ExternalDocumentationTest.kt index e9a26c04..5b5bd86c 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/ExternalDocumentationTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/ExternalDocumentationTest.kt @@ -9,11 +9,11 @@ class ExternalDocumentationTest: SerDeTest() { override fun objectClass() = ExternalDocumentation::class.java - override fun baseObjectJson() = "/json/2.6.0/model/externalDocumentation.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/externalDocumentation.json" - override fun extendedObjectJson() = "/json/2.6.0/model/externalDocumentation - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/externalDocumentation - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/externalDocumentation - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/externalDocumentation - wrongly extended.json" override fun build(): ExternalDocumentation { return ExternalDocumentation( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/ReferenceTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/ReferenceTest.kt index 6d751297..aa1199db 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/ReferenceTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/ReferenceTest.kt @@ -14,7 +14,7 @@ class ReferenceTest { @Test @DisplayName("Compare hand crafted model with parsed json") fun compareModelWithParsedJson() { - val model = ClasspathUtils.readAsString("/json/2.6.0/model/reference.json") + val model = ClasspathUtils.readAsString("/json/v2/2.6.0/model/reference.json") Assertions.assertEquals( objectMapper.readValue(model, Reference::class.java), diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/TagTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/TagTest.kt index cebdea83..bd422301 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/TagTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/TagTest.kt @@ -9,11 +9,11 @@ class TagTest: SerDeTest() { override fun objectClass() = Tag::class.java - override fun baseObjectJson() = "/json/2.6.0/model/tag.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/tag.json" - override fun extendedObjectJson() = "/json/2.6.0/model/tag - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/tag - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/tag - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/tag - wrongly extended.json" override fun build(): Tag { return Tag( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/ChannelItemTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/ChannelItemTest.kt index d56dc689..887452a9 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/ChannelItemTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/ChannelItemTest.kt @@ -17,11 +17,11 @@ class ChannelItemTest: SerDeTest() { override fun objectClass() = ChannelItem::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/channelItem.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/channelItem.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/channelItem - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/channelItem - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/channelItem - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/channelItem - wrongly extended.json" override fun build(): ChannelItem { val subscribe = OperationWithOneOfMessageTest().build() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/ParameterTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/ParameterTest.kt index aa91ef16..2997d669 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/ParameterTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/ParameterTest.kt @@ -8,11 +8,11 @@ class ParameterWithReferenceToSchemaTest: SerDeTest() { override fun objectClass() = Parameter::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/parameter with reference to schema.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/parameter with reference to schema.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/parameter with reference to schema - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/parameter with reference to schema - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/parameter with reference to schema - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/parameter with reference to schema - wrongly extended.json" override fun build(): Parameter { return Parameter.builder() @@ -28,11 +28,11 @@ class ParameterWithSchemaTest: SerDeTest() { override fun objectClass() = Parameter::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/parameter with schema.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/parameter with schema.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/parameter with schema - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/parameter with schema - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/parameter with schema - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/parameter with schema - wrongly extended.json" override fun build(): Parameter { return Parameter.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/CorrelationIdTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/CorrelationIdTest.kt index 8189884d..bb3a2882 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/CorrelationIdTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/CorrelationIdTest.kt @@ -6,11 +6,11 @@ class CorrelationIdTest: SerDeTest() { override fun objectClass() = CorrelationId::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/message/correlationId.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/message/correlationId.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/message/correlationId - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/message/correlationId - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/message/correlationId - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/message/correlationId - wrongly extended.json" override fun build(): CorrelationId { return CorrelationId.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageExampleTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageExampleTest.kt index 63ececc8..c6776428 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageExampleTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageExampleTest.kt @@ -6,11 +6,11 @@ class MessageExampleTest: SerDeTest() { override fun objectClass() = MessageExample::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/message/messageExample.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/message/messageExample.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/message/messageExample - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/message/messageExample - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/message/messageExample - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/message/messageExample - wrongly extended.json" override fun build(): MessageExample { return MessageExample.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageTest.kt index eeeef6dd..61cb7557 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageTest.kt @@ -17,11 +17,11 @@ class MessageTest: SerDeTest() { override fun objectClass() = Message::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/message/message.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/message/message.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/message/message - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/message/message - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/message/message - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/message/message - wrongly extended.json" override fun build(): Message { return Message.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageTraitTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageTraitTest.kt index a3c6ce0e..2b5dce28 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageTraitTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/MessageTraitTest.kt @@ -17,11 +17,11 @@ class MessageTraitTest: SerDeTest() { override fun objectClass() = MessageTrait::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/message/messageTrait.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/message/messageTrait.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/message/messageTrait - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/message/messageTrait - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/message/messageTrait - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/message/messageTrait - wrongly extended.json" override fun build(): MessageTrait { return MessageTrait.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/OneOfMessagesTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/OneOfMessagesTest.kt index 03ee0086..40a4f6a6 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/OneOfMessagesTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/message/OneOfMessagesTest.kt @@ -14,7 +14,7 @@ class OneOfMessagesTest { @Test @DisplayName("Compare hand crafted model with parsed json") fun compareModelWithParsedJson() { - val model = ClasspathUtils.readAsString("/json/2.6.0/model/channel/message/oneOfMessages.json") + val model = ClasspathUtils.readAsString("/json/v2/2.6.0/model/channel/message/oneOfMessages.json") Assertions.assertEquals( objectMapper.readValue(model, OneOfMessages::class.java), diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/operation/OperationTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/operation/OperationTest.kt index 22e9a533..1b9ecb4f 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/operation/OperationTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/operation/OperationTest.kt @@ -17,11 +17,11 @@ class OperationWithReferenceToMessageTest: SerDeTest() { override fun objectClass() = Operation::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/operation/operation with reference to message.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/operation/operation with reference to message.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/operation/operation with reference to message - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/operation/operation with reference to message - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/operation/operation with reference to message - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/operation/operation with reference to message - wrongly extended.json" override fun build(): Operation { return Operation.builder() @@ -56,11 +56,11 @@ class OperationWithMessageTest: SerDeTest() { override fun objectClass() = Operation::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/operation/operation with message.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/operation/operation with message.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/operation/operation with message - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/operation/operation with message - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/operation/operation with message - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/operation/operation with message - wrongly extended.json" override fun build(): Operation { return Operation.builder() @@ -94,11 +94,11 @@ class OperationWithOneOfMessageTest: SerDeTest() { override fun objectClass() = Operation::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/operation/operation with oneOf message.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/operation/operation with oneOf message.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/operation/operation with oneOf message - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/operation/operation with oneOf message - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/operation/operation with oneOf message - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/operation/operation with oneOf message - wrongly extended.json" override fun build(): Operation { return Operation.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/operation/OperationTraitTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/operation/OperationTraitTest.kt index ca7f5304..5323cc73 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/operation/OperationTraitTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/channel/operation/OperationTraitTest.kt @@ -15,11 +15,11 @@ class OperationTraitTest: SerDeTest() { override fun objectClass() = OperationTrait::class.java - override fun baseObjectJson() = "/json/2.6.0/model/channel/operation/operationTrait.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/channel/operation/operationTrait.json" - override fun extendedObjectJson() = "/json/2.6.0/model/channel/operation/operationTrait - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/channel/operation/operationTrait - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/channel/operation/operationTrait - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/channel/operation/operationTrait - wrongly extended.json" override fun build(): OperationTrait { return OperationTrait.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/component/ComponentsTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/component/ComponentsTest.kt index 2bb3ec16..2135c2f3 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/component/ComponentsTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/component/ComponentsTest.kt @@ -29,11 +29,11 @@ class ComponentsTest: SerDeTest() { override fun objectClass() = Components::class.java - override fun baseObjectJson() = "/json/2.6.0/model/components/components.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/components/components.json" - override fun extendedObjectJson() = "/json/2.6.0/model/components/components - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/components/components - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/components/components - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/components/components - wrongly extended.json" override fun build(): Components { return Components.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/ContactTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/ContactTest.kt index a40bc460..f1e72822 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/ContactTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/ContactTest.kt @@ -9,11 +9,11 @@ class ContactTest: SerDeTest() { override fun objectClass() = Contact::class.java - override fun baseObjectJson() = "/json/2.6.0/model/info/contact.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/info/contact.json" - override fun extendedObjectJson() = "/json/2.6.0/model/info/contact - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/info/contact - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/info/contact - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/info/contact - wrongly extended.json" override fun build(): Contact { return Contact( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/InfoTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/InfoTest.kt index 069fc521..9175180f 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/InfoTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/InfoTest.kt @@ -9,11 +9,11 @@ class InfoTest: SerDeTest() { override fun objectClass() = Info::class.java - override fun baseObjectJson() = "/json/2.6.0/model/info/info.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/info/info.json" - override fun extendedObjectJson() = "/json/2.6.0/model/info/info - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/info/info - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/info/info - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/info/info - wrongly extended.json" override fun build(): Info { return Info( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/LicenseTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/LicenseTest.kt index 20beb268..7b84540c 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/LicenseTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/info/LicenseTest.kt @@ -9,11 +9,11 @@ class LicenseTest: SerDeTest() { override fun objectClass() = License::class.java - override fun baseObjectJson() = "/json/2.6.0/model/info/license.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/info/license.json" - override fun extendedObjectJson() = "/json/2.6.0/model/info/license - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/info/license - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/info/license - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/info/license - wrongly extended.json" override fun build(): License { return License( diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/server/ServerTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/server/ServerTest.kt index 2711875b..e742ad1f 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/server/ServerTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/server/ServerTest.kt @@ -31,11 +31,11 @@ class ServerTest: SerDeTest() { override fun objectClass() = Server::class.java - override fun baseObjectJson() = "/json/2.6.0/model/server/server.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/server/server.json" - override fun extendedObjectJson() = "/json/2.6.0/model/server/server - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/server/server - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/server/server - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/server/server - wrongly extended.json" override fun build(): Server { return Server.builder() diff --git a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/server/ServerVariableTest.kt b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/server/ServerVariableTest.kt index aaf72c69..6f5b4da0 100644 --- a/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/server/ServerVariableTest.kt +++ b/asyncapi-core/src/test/kotlin/com/asyncapi/v2/_6_0/model/server/ServerVariableTest.kt @@ -10,11 +10,11 @@ class ServerVariableTest: SerDeTest() { override fun objectClass() = ServerVariable::class.java - override fun baseObjectJson() = "/json/2.6.0/model/server/serverVariable.json" + override fun baseObjectJson() = "/json/v2/2.6.0/model/server/serverVariable.json" - override fun extendedObjectJson() = "/json/2.6.0/model/server/serverVariable - extended.json" + override fun extendedObjectJson() = "/json/v2/2.6.0/model/server/serverVariable - extended.json" - override fun wronglyExtendedObjectJson() = "/json/2.6.0/model/server/serverVariable - wrongly extended.json" + override fun wronglyExtendedObjectJson() = "/json/v2/2.6.0/model/server/serverVariable - wrongly extended.json" override fun build(): ServerVariable { return ServerVariable.builder() diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/asyncapi - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/asyncapi - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/asyncapi - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/asyncapi - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/asyncapi - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/asyncapi - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/asyncapi - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/asyncapi - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/asyncapi.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/asyncapi.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/asyncapi.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/asyncapi.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/channelItem - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/channelItem - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/channelItem - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/channelItem - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/channelItem - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/channelItem - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/channelItem - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/channelItem - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/channelItem.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/channelItem.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/channelItem.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/channelItem.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/correlationId - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/correlationId - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/correlationId - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/correlationId - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/correlationId - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/correlationId - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/correlationId - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/correlationId - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/correlationId.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/correlationId.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/correlationId.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/correlationId.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/message - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/message - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/message - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/message - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/message - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/message - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/message - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/message - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/message.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/message.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/message.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/message.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageExample - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageExample - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageExample - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageExample - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageExample - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageExample - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageExample - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageExample - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageExample.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageExample.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageExample.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageExample.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageTrait - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageTrait - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageTrait - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageTrait - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageTrait - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageTrait - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageTrait - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageTrait - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageTrait.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageTrait.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/messageTrait.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/messageTrait.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/oneOfMessages.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/oneOfMessages.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/message/oneOfMessages.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/message/oneOfMessages.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with message - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with message - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with message - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with message - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with message - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with message - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with message - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with message - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with message.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with message.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with message.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with message.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with oneOf message - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with oneOf message - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with oneOf message - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with oneOf message - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with oneOf message - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with oneOf message - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with oneOf message - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with oneOf message - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with oneOf message.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with oneOf message.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with oneOf message.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with oneOf message.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with reference to message - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with reference to message - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with reference to message - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with reference to message - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with reference to message - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with reference to message - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with reference to message - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with reference to message - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with reference to message.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with reference to message.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operation with reference to message.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operation with reference to message.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operationTrait - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operationTrait - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operationTrait - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operationTrait - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operationTrait - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operationTrait - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operationTrait - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operationTrait - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operationTrait.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operationTrait.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/operation/operationTrait.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/operation/operationTrait.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with reference to schema - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with reference to schema - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with reference to schema - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with reference to schema - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with reference to schema - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with reference to schema - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with reference to schema - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with reference to schema - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with reference to schema.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with reference to schema.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with reference to schema.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with reference to schema.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with schema - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with schema - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with schema - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with schema - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with schema - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with schema - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with schema - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with schema - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with schema.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with schema.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/channel/parameter with schema.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/channel/parameter with schema.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/components/components - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/components/components - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/components/components - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/components/components - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/components/components - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/components/components - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/components/components - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/components/components - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/components/components.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/components/components.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/components/components.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/components/components.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/externalDocumentation - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/externalDocumentation - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/externalDocumentation - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/externalDocumentation - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/externalDocumentation - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/externalDocumentation - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/externalDocumentation - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/externalDocumentation - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/externalDocumentation.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/externalDocumentation.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/externalDocumentation.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/externalDocumentation.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/info/contact - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/contact - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/info/contact - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/contact - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/info/contact - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/contact - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/info/contact - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/contact - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/info/contact.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/contact.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/info/contact.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/contact.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/info/info - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/info - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/info/info - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/info - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/info/info - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/info - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/info/info - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/info - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/info/info.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/info.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/info/info.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/info.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/info/license - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/license - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/info/license - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/license - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/info/license - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/license - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/info/license - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/license - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/info/license.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/license.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/info/license.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/info/license.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/reference.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/reference.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/reference.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/reference.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/server/server - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/server - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/server/server - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/server - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/server/server - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/server - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/server/server - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/server - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/server/server.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/server.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/server/server.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/server.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/server/serverVariable - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/serverVariable - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/server/serverVariable - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/serverVariable - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/server/serverVariable - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/serverVariable - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/server/serverVariable - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/serverVariable - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/server/serverVariable.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/serverVariable.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/server/serverVariable.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/server/serverVariable.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/tag - extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/tag - extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/tag - extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/tag - extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/tag - wrongly extended.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/tag - wrongly extended.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/tag - wrongly extended.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/tag - wrongly extended.json diff --git a/asyncapi-core/src/test/resources/json/2.6.0/model/tag.json b/asyncapi-core/src/test/resources/json/v2/2.6.0/model/tag.json similarity index 100% rename from asyncapi-core/src/test/resources/json/2.6.0/model/tag.json rename to asyncapi-core/src/test/resources/json/v2/2.6.0/model/tag.json