# Source: https://github.com/jina-ai/jina/blob/master/docs/yaml-spec.md(yaml-spec)=# {octicon}`file-code` YAML SpecificationYAML is widely used in Jina-serve to define an Executor, Flow. This page helps you quickly navigate different YAML specifications.## Executor-level YAMLExecutor level YAML is placed inside the Executor directory, as a part of Executor file structure.:::::{grid} 2:gutter: 3::::{grid-item-card} Executor YAML:link: concepts/serving/executor/yaml-spec:link-type: docDefine the argument of `__init__`, Python module dependencies and other settings of an Executor.:::::::::## Flow-level YAMLFlow level YAML is placed inside the Flow directory, as a part of Flow file structure. It defines the Executors that will be used in the Flow, the Gateway and the JCloud hosting specifications.:::::{grid} 2:gutter: 3::::{grid-item-card} Flow YAML:link: concepts/orchestration/flow/yaml-spec:link-type: docDefine the Executors, the topology and the Gateway settings of a Flow.::::::::{grid-item-card} Gateway YAML:link: concepts/serving/gateway/yaml-spec:link-type: docDefine the protocol, TLS, authentication and other settings of a Gateway.+++Gateway specification is nested under the Flow YAML via `with:` keywords.::::::::{grid-item-card} JCloud YAML:link: concepts/jcloud/yaml-spec:link-type: docDefine the resources and autoscaling settings on Jina-serve Cloud+++JCloud specification is nested under the Flow YAML via `jcloud:` keywords.:::::::::