> For the complete documentation index, see [llms.txt](https://janelia-flyem.gitbook.io/neutu/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://janelia-flyem.gitbook.io/neutu/protocols/connection-validation.md).

# Connection Validation

When you start a new synapse validation protocol, NeuTu will ask you to provide a protocol file as a start point. The file should contain a list of points that corresponding to the positions of the synaptic elements to validate.

{% tabs %}
{% tab title="Protocol file example" %}

```javascript
{
  "file type": "connection validation",
  "username": "flyem",
  "software": "NeuTu",
  "file version": 1,
  "points": [
    [
      1117,
      982,
      1024
    ],
    [
      1117,
      974,
      1023
    ]
  ]
}
```

{% endtab %}

{% tab title="Schema" %}

```javascript
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "date": {
      "type": "string"
    },
    "file type": {
      "type": "string",
      "const": "connection validation"
    },
    "username": {
      "type": "string"
    },
    "software": {
      "type": "string"
    },
    "coordinate system": {
      "type": "string"
    },
    "file version": {
      "description": "Version of protocol file. Only 1 is supported for now",
      "type": "integer",
      "const": 1
    },
    "points": {
      "descriptions": "Positions of the synapses to validate",
      "type": "array",
      "items": {
        "type": "array",
        "items": [
          {
            "type": "integer"
          },
          {
            "type": "integer"
          },
          {
            "type": "integer"
          }
        ]
      }
    }
  },
  "required": [
    "file type",
    "file version",
    "points"
  ]
}
```

{% endtab %}
{% endtabs %}

After launching the protocol successfully, you should be able to see a dialog like this:

![Connection Validation Dialog](/files/-MMW7Z8n14mXTWfyJh7L)

We can see from the dialog that each task of this protocol is to review a synaptic connection (supposed to be a PSD) by checking if:

* The position of the connected T-bar is correct
* The T-bar is on a body that looks correct locally
* The position of the PSD is correct
* The PSD is on a body that looks correct

One done with reviewing, you can press the `Complete protocol` button to finish the protocol. If you want to exit the protocol and resume the current progress later, press the `Exit protocol`. The validation results are saved as key values in DVID under `api/node/<uuid>/NeuTu-protocols/key/<protocol_key>`. The protocol key has the form like `/api/node/(uuid)/NeuTu-protocols/key/(username)-connection_validation-(identifier)`.

{% hint style="info" %}
Tips

* Usually you will just review things in order, manually clicking the check boxes, and click "mark review/go to next" when done with each.
* You can click "next" to go out of order, or click directly in the list if you prefer; it's one list so you see pending and complete all at once, and you can go back and change things later easily
* When you click first/next buttons, or goto current, NeuTu will navigate to the x, y, z location of the PSD in the 2d view.
* There are no keyboard shortcuts right now
  {% endhint %}

<br>
