# Your First Service Commissioning File

Download the service commissioning file and make yourself familiar with its structure.

{% file src="<https://950196595-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwTih5dM9HKbgRlnp5wVj%2Fuploads%2Fgit-blob-ef6baaf397a05111df6d2440bd42ca33af5684b7%2Fconnect-your-first-machine.yaml?alt=media>" %}

* To learn how to connect your first machine using this service commissioning file, see [Connecting your First Machine](https://docs.cybus.io/1-7-3/getting-started/connect-your-first-machine).

### Structure of the Sample Service Commissioning File

The service commissioning file contains the following elements.

#### `description`

This section contains a short description of the template.

#### `metadata`

This section contains the name, version number, provider and homepage of the provider of the service commissioning file.

#### `parameters`

This section defines the parameters for the configuration of the OPC UA connection. The following parameters are available:

* `opcuaHost`: The address of the OPC UA host (default value: [opcua.demo-this.com](http://opcua.demo-this.com/)).
* `opcuaPort`: The port of the OPC UA host (default value: 51210).

#### `resources`

This section defines the resources that are used in this example. The following resources are available:

* `opcuaConnection`: Defines the connection to the OPC UA server.
  * `type`: Defines the type of the resource. In this case, `Cybus::Connection`.
  * `properties`: Defines the properties of the connection.
    * `protocol`: The protocol used. In this case, `Opcua`.
    * `connection`: The connection details, where the parameters `host` and `port` refer to the previously defined parameters `opcuaHost` and `opcuaPort`.
* `RandomDataExample`: Defines an endpoint that subscribes to data from a specific node of the OPC UA server.
  * `type`: Defines the type of the resource. In this case, `Cybus::Endpoint`.
  * `properties`: Defines the properties of the endpoint.
    * `protocol`: The used protocol. In this case, `Opcua`.
    * `connection`: Refers to the previously defined OPC UA connection.
    * `subscribe`: Defines the node (`nodeId`) from which data is subscribed (in this case `ns=2;i=11021`).
* `mapping`: Defines a mapping that forwards the subscribed data to a specific publication target.
  * `type`: Defines the type of the resource. In this case, `Cybus::Mapping`.
    * `properties`: The properties of the mapping.
      * `mappings`: A list of mappings.
        * `subscribe`: Defines the end point from which data is subscribed (`RandomDataExample`).
        * `publish`: Defines the publication target (`topic`), whereby a topic (`example/opcua/dataexample`) is specified.
