> For the complete documentation index, see [llms.txt](https://aegion-dynamic.gitbook.io/learning-resources/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://aegion-dynamic.gitbook.io/learning-resources/software-engineering/communication-standards.md).

# Communication Standards

## OpenAPI

OpenAPI was the standard that should have existed 10 years ago when developers first started writing REST APIs. OpenAPI is the modern standard that now allows for automated code generation for server and client side code and helps ensure that the bulk of the effort necessary for writing this code is reduced to the minimum. By defining the REST API in a schema, developers will be able to quickly update both the server and client side code and ensure that the API doesn’t break during development and production.

Tutorial:

{% embed url="<https://posener.github.io/openapi-intro/>" %}

## GraphQL

GraphQL is unique system of building API’s that allows you to treat the data available on the server as a graph and allows you to query bits and pieces of it, compose complex queries, etc.

Tutorial:

{% embed url="<https://graphql.org/learn/>" %}
