This prompt is designed for API designers and platform engineers who need to catch contract defects early in the development cycle. It acts as a design-time gate, analyzing an AsyncAPI specification for completeness and correctness across channel definitions, message schemas, security schemes, and protocol bindings. The primary job-to-be-done is accelerating the review cycle by producing a categorized findings report that flags issues like missing error responses, undocumented headers, and binding gaps—problems that would otherwise surface as costly production integration failures. The ideal user has a draft AsyncAPI document and needs a consistent, automated baseline review before requesting manual architecture or peer review.
Prompt
AsyncAPI Specification Review Prompt

When to Use This Prompt
Use this prompt to perform a structured, automated first-pass review of an AsyncAPI specification before it reaches downstream consumers.
You should use this prompt when you have a complete or near-complete AsyncAPI specification in JSON or YAML format and want to identify structural gaps, missing required fields, or deviations from best practices. It is particularly effective as a pre-commit or pre-review gate in a CI/CD pipeline, where it can block merges that introduce regressions in contract completeness. The prompt requires the full specification text as input, along with optional context about the intended protocol (e.g., Kafka, MQTT, HTTP) and any organizational standards that should be enforced. The output is a structured findings report that categorizes issues by severity and component, making it actionable for the specification author.
Do not use this prompt as a replacement for manual architecture review, security threat modeling, or runtime behavior validation. It will not catch logical errors in message flow design, performance bottlenecks, or subtle semantic mismatches between producer intent and consumer expectation. It is also not suitable for reviewing specifications that are intentionally incomplete early drafts, as it will generate noise from missing sections that are not yet scoped. After running this prompt, you should review the findings, dismiss false positives, and escalate critical issues to a human reviewer. For high-risk systems, always pair this automated review with a manual approval step before publishing the specification to a public or partner-facing registry.
Use Case Fit
Where the AsyncAPI Specification Review Prompt works well and where it introduces risk. Use these cards to decide if this prompt fits your current review stage.
Good Fit: Pre-Implementation Contract Review
Use when: You have a draft AsyncAPI document before any producer or consumer code is written. The prompt excels at finding missing error schemas, undocumented headers, and inconsistent security schemes before they become integration bugs. Guardrail: Run the review before sprints begin, not after code is committed.
Good Fit: Multi-Team Alignment Gate
Use when: Multiple teams need to agree on channel naming, message formats, and binding details. The prompt produces a structured review that serves as a shared checklist. Guardrail: Distribute the review output as a pre-read before the architecture sync meeting.
Bad Fit: Runtime Behavior Validation
Risk: The prompt reviews the specification document, not the actual broker behavior. It cannot detect whether messages actually conform to the schema in production or whether brokers enforce the declared bindings. Guardrail: Pair this prompt with integration tests that validate runtime message payloads against the reviewed spec.
Bad Fit: Performance or Throughput Analysis
Risk: The prompt cannot evaluate whether channel partitioning, consumer group sizing, or message batching will meet latency and throughput requirements. It reviews structural correctness, not operational capacity. Guardrail: Use separate load-testing and capacity-planning workflows after the spec review passes.
Required Inputs: Complete AsyncAPI Document
What to watch: The prompt needs channels, messages, schemas, security schemes, and bindings to produce a meaningful review. A partial spec with placeholder sections will produce a review full of false negatives. Guardrail: Validate that your AsyncAPI document passes basic parser validation before feeding it to the review prompt.
Operational Risk: Over-Trusting the Review
What to watch: Teams may treat the prompt output as a complete and final review, skipping human judgment on business logic, regulatory requirements, or domain-specific constraints the prompt cannot know. Guardrail: Require a human sign-off step for security scheme decisions, error handling policies, and binding choices that affect production SLAs.
Copy-Ready Prompt Template
A copy-ready prompt for reviewing AsyncAPI specifications against channel definitions, message schemas, security schemes, and binding completeness.
This prompt template is designed to be pasted directly into your AI workflow. It instructs the model to act as an API design reviewer, systematically evaluating an AsyncAPI specification against a set of defined criteria. The template uses square-bracket placeholders for all variable inputs, such as the specification itself, the desired output format, and any specific constraints or risk levels. This ensures the prompt is reusable across different specifications and review contexts without modification to its core instructions.
markdownYou are an expert API architect reviewing an AsyncAPI specification for correctness, completeness, and consistency. Your review must be structured, evidence-based, and practical. ## Input Specification [ASYNCAPI_SPECIFICATION] ## Review Criteria Evaluate the specification against the following dimensions. For each finding, cite the specific line or object path from the specification. 1. **Channel Definitions:** Verify that all channels are clearly named, have a defined `description`, and include a `publish` or `subscribe` operation. Flag any channels that are ambiguous or missing a description. 2. **Message Schemas:** For every message, check that the `payload` references a defined schema in the `components.messages` section. Ensure schemas include `type`, `properties`, and `required` fields where appropriate. Flag any inline schemas that should be extracted as reusable components. 3. **Security Schemes:** Confirm that all security requirements in `servers` are defined in `components.securitySchemes`. Check that the scheme `type` (e.g., `userPassword`, `apiKey`) is valid and includes necessary `description` and `bearerFormat` or `in` fields. 4. **Binding Completeness:** Identify any protocol-specific bindings (e.g., `kafka`, `mqtt`, `http`) on servers, channels, or operations. Verify that the binding objects contain the minimum required fields for that protocol. Flag missing bindings where they are expected. 5. **Error Handling:** Check for the presence of error responses or error message definitions. Flag any operation that lacks a defined error response, as this is a critical gap for robust client design. 6. **Undocumented Headers:** Review message headers. Flag any custom headers that are used but not formally documented in the message's `headers` schema. ## Output Format [OUTPUT_SCHEMA] ## Constraints - [CONSTRAINTS] - If no constraints are provided, default to: "Be concise. Group findings by severity (Critical, Warning, Suggestion)." ## Risk Level [RISK_LEVEL] ## Review Proceed with the review based on the criteria and constraints above.
To adapt this template, replace the placeholders with your specific context. For [ASYNCAPI_SPECIFICATION], paste the full YAML or JSON document. For [OUTPUT_SCHEMA], you can request a structured format like a JSON array of findings or a markdown report. The [CONSTRAINTS] placeholder allows you to add project-specific rules, such as naming conventions or required extensions. The [RISK_LEVEL] input (e.g., high, medium, low) can be used to adjust the strictness of the review. After running the prompt, always validate the output against your expected schema and have a human architect review critical findings before accepting changes to the specification.
Prompt Variables
Placeholders required by the AsyncAPI Specification Review Prompt. Replace each with concrete values before execution. Validation notes describe how to confirm the input is well-formed before sending it to the model.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[ASYNCAPI_SPEC] | The raw AsyncAPI specification document to review, in YAML or JSON format | asyncapi: 3.0.0 info: title: Order Events channels: order/placed: ... | Parse check: must be valid YAML or JSON. Schema check: must conform to AsyncAPI 2.x or 3.x specification. Reject if empty or contains only comments. |
[REVIEW_DIMENSIONS] | Comma-separated list of review dimensions to focus on, selected from channels, messages, schemas, security, bindings, errors, headers, versioning | channels, messages, security, errors | Enum check: each value must match an allowed dimension. Default to all dimensions if empty. Reject if contains unrecognized dimensions. |
[ORGANIZATION_STANDARDS] | Optional reference to internal naming conventions, header requirements, or error schema standards the spec must comply with | All channels must use lowercase dot-separated names. All messages must include a correlationId header. | Null allowed. If provided, must be non-empty string. Parse check: confirm it contains actionable rules, not vague guidance. |
[BINDING_PROTOCOLS] | List of protocol bindings expected in the review, such as Kafka, MQTT, HTTP, AMQP | kafka, http | Enum check: each value must be a recognized AsyncAPI binding protocol. Null allowed if no binding review is needed. Reject if protocol name is misspelled or unsupported. |
[SECURITY_REQUIREMENTS] | Optional security scheme names or OAuth2 scopes that must be present in the spec | OAuth2 with order:read and order:write scopes | Null allowed. If provided, parse as structured security requirement. Check that scheme names match known patterns (OAuth2, ApiKey, etc.). Reject if malformed. |
[OUTPUT_FORMAT] | Desired output structure for the review findings | markdown | Enum check: must be one of markdown, json, or yaml. Default to markdown if not specified. Reject unrecognized formats. |
[SEVERITY_THRESHOLD] | Minimum severity level to include in findings | warning | Enum check: must be one of info, warning, error, critical. Default to warning. Findings below threshold are omitted from output. |
Implementation Harness Notes
How to wire the AsyncAPI Specification Review Prompt into an application or CI workflow.
This prompt is designed to be called programmatically, not just used in a chat interface. The primary integration point is a CI pipeline or a developer CLI tool that runs on every pull request touching an asyncapi.yaml or asyncapi.json file. The harness should read the specification file, inject its contents into the [ASYNCAPI_SPEC] placeholder, and pass the full prompt to the model. Because the prompt asks the model to produce a structured review with specific sections (channel definitions, message schemas, security schemes, bindings), the output must be parsed and validated before it is surfaced to the developer.
Validation and retries: After receiving the model response, the harness must validate that the output contains all required review sections. A simple JSON schema or a set of regex checks can confirm the presence of headings like ## Channel Review, ## Message Schema Review, ## Security Scheme Review, and ## Binding Completeness Review. If any required section is missing, the harness should retry the prompt once with an explicit instruction appended: Your previous response was missing the [MISSING_SECTION] section. Please regenerate the full review including all required sections. If the retry also fails, the harness should log the failure and surface a partial review with a clear warning that automated analysis was incomplete.
Model choice and tool use: This is a zero-shot analysis task that benefits from a model with strong reasoning and structured output capabilities. GPT-4o, Claude 3.5 Sonnet, or Gemini 1.5 Pro are appropriate defaults. The prompt does not require tool calls or RAG because the entire specification document is provided inline. However, for large specifications exceeding the model's context window, the harness should implement a pre-processing step that extracts and summarizes the most critical sections (channels, schemas, security) before passing them to the prompt. The harness should log the token count of the specification and warn if it exceeds 80% of the model's context limit.
Human review and approval gates: This prompt produces a review, not a final decision. The output should be posted as a comment on the pull request or surfaced in a review dashboard, never auto-merged. For high-risk specifications—those defining production event flows, PII-carrying payloads, or external-facing APIs—the harness should require a human reviewer to explicitly approve the review before the PR can be merged. The harness can enforce this by setting a CI status check that only passes when a designated reviewer comments /approve-asyncapi-review on the PR.
Logging and observability: Every invocation should log the specification file path, the model used, the token count, the validation result, and whether a retry was required. If the model flags a critical issue (e.g., missing security scheme, undocumented error responses), the harness should emit a structured event that can be routed to the team's monitoring or alerting system. This turns the prompt from a one-off review into an observable quality gate that improves over time as the team tunes the eval criteria and failure thresholds.
Expected Output Contract
Defines the structure, types, and validation rules for the AsyncAPI specification review output. Use this contract to parse, validate, and route findings before surfacing them to a user or downstream system.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
review_summary | String | Must be a non-empty string between 50 and 500 characters. Check length bounds. | |
overall_assessment | Enum: 'Pass', 'Pass with Recommendations', 'Fail' | Must be exactly one of the three allowed enum values. Reject any other string. | |
findings | Array of Finding Objects | Must be a non-empty JSON array. Each element must conform to the Finding Object schema. | |
finding.severity | Enum: 'Critical', 'High', 'Medium', 'Low', 'Info' | Must be one of the five allowed severity levels. Reject unknown severity strings. | |
finding.category | Enum: 'Security', 'Schema', 'Binding', 'Completeness', 'Naming', 'Versioning' | Must be one of the six allowed categories. Reject unknown categories. | |
finding.location | String (JSONPath or Channel Name) | Must be a non-empty string. If a JSONPath, validate basic syntax (starts with '$' or '$.channels'). | |
finding.recommendation | String | Must be a non-empty string. If severity is 'Critical' or 'High', length must be greater than 20 characters. | |
reviewed_channels | Array of Strings | If present, every string in the array must match a channel key from the input [ASYNCAPI_SPEC]. Null or empty array is allowed. |
Common Failure Modes
When reviewing AsyncAPI specifications with LLMs, these failure patterns appear most often. Each card identifies a specific risk and a concrete guardrail to prevent it from reaching production.
Silent Schema Drift
What to watch: The model accepts schemas that are valid JSON Schema but semantically incompatible with the channel's purpose—such as a temperature field typed as string when downstream consumers expect number. The review passes syntax checks but misses semantic mismatches. Guardrail: Add a harness check that extracts each property's type and compares it against a known-good type registry or example payload. Flag any type mismatch for human review before accepting the review output.
Missing Error Channel Definitions
What to watch: The model focuses on happy-path publish/subscribe channels and omits review of error channels, dead-letter destinations, or invalid-message routing. The spec looks complete but lacks operational error handling contracts. Guardrail: Include an explicit checklist item in the prompt requiring the model to verify that every subscribe operation has a corresponding error channel or dead-letter binding defined. If absent, mark the review as incomplete and escalate.
Undocumented Header Propagation
What to watch: The model accepts message definitions that omit critical tracing headers such as correlation-id, traceparent, or custom tenant identifiers. Downstream observability breaks because the contract doesn't require what operations need. Guardrail: Add a validation step that scans all message headers against a required-header checklist. If required propagation headers are missing from any message, fail the review with a specific gap report.
Security Scheme Blind Spots
What to watch: The model reviews OAuth2 and API key schemes but misses gaps in per-channel security requirements—such as a publish channel that lacks authentication while its paired subscribe channel requires it, creating an asymmetric trust boundary. Guardrail: Include a cross-reference check in the harness that verifies every channel has an explicit security scheme applied. Flag any channel without a security binding as a critical finding requiring immediate human review.
Binding Completeness Overconfidence
What to watch: The model accepts partial protocol bindings (e.g., Kafka bindings present but missing partition key configuration, or MQTT bindings present but missing QoS levels). The review output claims completeness when operational details are missing. Guardrail: Define a binding completeness checklist per protocol in the prompt. Require the model to explicitly confirm each required binding field is present. If any field is absent, the review must report it as a gap rather than assuming defaults.
Versioning Assumption Collapse
What to watch: The model treats the spec version as the only versioning concern and fails to check whether individual message schemas declare their own version fields or evolution strategies. Consumers relying on schema registries receive incompatible payloads. Guardrail: Add a prompt instruction requiring the model to verify that each message schema includes an explicit version field or references a schema registry subject version. If versioning metadata is absent, flag it as a breaking-change risk for downstream consumers.
Evaluation Rubric
Criteria for evaluating the quality of an AsyncAPI specification review output before integrating it into a CI pipeline or design review process.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Channel Definition Completeness | Every channel in the spec is listed with its publish/subscribe roles explicitly identified | Output omits a channel present in the input spec or misidentifies its direction | Parse output for channel list; diff against input spec channel keys |
Message Schema Validation | Each message payload references a defined schema and the review flags any schemaless payloads | Review output claims all messages have schemas when the input spec contains raw or missing schemaFormat fields | Assert review output contains a warning for each message with no schema or schemaFormat |
Security Scheme Coverage | All security schemes defined in the spec are reviewed for completeness and applicability to listed channels | Review output ignores a security scheme or fails to note channels that lack security requirements | Check that each security scheme name appears in the review and is mapped to at least one channel |
Binding Completeness Check | Review explicitly notes which protocols lack binding definitions and identifies missing required bindings | Review output states bindings are complete when protocol-specific bindings are absent from the input spec | Scan review output for binding-related warnings; cross-reference with protocol fields in input spec channels |
Error Response Documentation | Review flags any operation that lacks documented error responses or error message schemas | Review output makes no mention of error handling even when operations define only success messages | Assert review output contains an error-handling section with per-operation findings |
Undocumented Header Detection | Review identifies message headers present in examples but not declared in the message schema | Review output claims headers are fully documented when example payloads contain undeclared headers | Parse review output for header warnings; compare against example headers in input spec message examples |
Evolvability Assessment | Review includes explicit commentary on backward compatibility risks and versioning strategy gaps | Review output contains no mention of versioning, deprecation, or compatibility even when spec uses multiple versions | Check review output for versioning-related sections or compatibility warnings |
Actionable Recommendation Quality | Each finding includes a concrete, specific recommendation tied to a spec location, not generic advice | Recommendations are vague, untethered to spec elements, or consist only of best-practice slogans | Sample 3 findings and verify each references a specific channel, operation, or schema path |
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Adapt This Prompt
How to adapt
Add a strict output schema, require line-number references, and include eval assertions for each review dimension. Wire the prompt into a CI pipeline that blocks merges on critical findings.
codeReview the following AsyncAPI specification. Return a JSON object matching [OUTPUT_SCHEMA]. For every finding, reference the exact line or path in the spec. Classify severity as CRITICAL, WARNING, or INFO. Review dimensions: - Channel definitions and parameter completeness - Message schema validity and example alignment - Security scheme coverage per operation - Binding completeness (protocol-specific) - Error response and header documentation [ASYNCAPI_SPEC] [OUTPUT_SCHEMA]
Watch for
- Silent format drift when the model drops fields
- Missing human review gate for CRITICAL findings
- Retry budget exhaustion on large specs—chunk by channel if needed

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us