# Open api spec

The OpenAPI Specification (OAS) defines a standard, language-agnostic interface to RESTful APIs which allows both humans and computers to discover and understand the capabilities of the service without access to source code, documentation, or through network traffic inspection. When properly defined, a consumer can understand and interact with the remote service with a minimal amount of implementation logic.

An OpenAPI definition can then be used by documentation generation tools to display the API, code generation tools to generate servers and clients in various programming languages, testing tools, and many other use cases.

<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Framework Website' href='https://swagger.io/specification/'>OpenAPI Specification Website</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Demo' href='https://swagger.io/tools/swagger-editor/'>Open API Live Editor</BadgeLink>
<BadgeLink badgeText='Watch' colorScheme='green' href='https://www.youtube.com/watch?v=6kwmW_p_Tig'>OpenAPI 3.0: How to Design and Document APIs with the Latest OpenAPI Specification 3.0</BadgeLink>
<BadgeLink badgeText='Course' href='https://swagger.io/docs/specification/about/'>Official training guide</BadgeLink>
