API Genie
  • Lint and formatCheck every API description against your rules and put it in one style
  • Catch breaking changesKnow what every change does to your clients before it ships
  • Generate codeClients, servers, schemas and test data in six languages
  • Mock and testMock APIs from their contracts, and check real ones against them
  • Publish API docsReference pages and documentation sites from the contract
  • Edit visuallyEdit OpenAPI and AsyncAPI in forms, and keep your files
  • Catalog your APIsKnow every API of a repository and who owns it
  • Work with AI agentsChecks, diffs and machine-readable reports for the agents that write your APIs
  • CLILint, format, diff, bundle and contract-test your API contracts
  • GeneratorGenerate API clients and servers, documentation sites and test data
  • ServerMock an API from its contract, or put a validating proxy in front of a real one
  • CatalogFind API specifications in a repository and record their owners
  • EditorEdit OpenAPI and AsyncAPI in forms without reformatting untouched content
  • Doc componentsEmbed API references into your own site with web components

Learn

  • Get startedInstall API Genie and run your first commands in five minutes
  • How-to guidesOne job, step by step, from the first command to CI
  • Linter rulesEvery rule and ruleset, for each of the five standards
  • CI and GitHub ActionLint and check for breaking changes in every pull request
  • ChangelogWhat changed in each release

Reference

  • CLIapigenie and its commands
  • Generatorapigenie-generator and every generator
  • Serverapigenie-server: mocks and proxies
  • Catalogapigenie-catalog: the API catalog
  • EditorWhat the editor offers on each host
DownloadsBlogContactGitHubGet started

Linter rules

OpenAPI

  • Recommended ruleset
  • Strict ruleset
  • All ruleset
  • JsonApi ruleset
  • Privacy ruleset

AsyncAPI

  • Recommended ruleset
  • Strict ruleset
  • All ruleset

Swagger 2.0

  • Recommended ruleset
  • Strict ruleset
  • All ruleset

GraphQL

  • Recommended ruleset
  • Strict ruleset
  • All ruleset
  • Relay ruleset

Protobuf

  • Recommended ruleset
  • Strict ruleset
  • All ruleset

Linter rules/AsyncAPI/Strict ruleset

Strict ruleset

Rules

Name Severity
audience-defined error
channel-addresses-unique error
channel-parameters-defined error
contact-defined error
id-defined error
info-defined error
license-defined error
operation-description-defined error
operation-security-defined warning
operation-tags-defined warning
parameter-description-defined warning
parameter-naming warning
safe-markdown error
schema-constraints warning
schema-datetime-suffix error
schema-enum-naming error
schema-enum-no-duplicates error
schema-enum-types error
schema-example-defined error
schema-format-defined error
schema-format-deprecated warning
schema-format-type-mismatch error
schema-format-unknown warning
schema-no-additional-properties error
schema-property-naming error
server-hosts error
servers-defined error
spell-check warning
standard-media-types error
tag-description-defined warning
tags-sorted error
tags-unique error
unused-shared-component error

Use cases

  • Lint and format
  • Catch breaking changes
  • Generate code
  • Mock and test
  • Publish API docs
  • Edit visually
  • Catalog your APIs
  • Work with AI agents

Tools

  • CLI
  • Generator
  • Server
  • Catalog
  • Editor
  • Doc components

Docs

  • Get started
  • How-to guides
  • CLI reference
  • Editor reference
  • Linter rules
  • CI and GitHub Action

Resources

  • Downloads
  • Changelog
  • Blog
  • RSS feed
  • GitHub
  • llms.txt

Company

  • Contact
  • Safety
  • Credits and licenses
  • Privacy Policy
  • Cookie Policy

Copyright © 2023-2026 "Prof-IT" Andriy Mykulyak. All rights reserved.

We use cookies to analyze our website and make your experience even better. To learn more, see our Privacy Policy.