# Example 3 - Node with Error (HTTP)

This example demonstrates error handling in FlowSync transactions. Building upon [Example 2 - Node with Error (HTTP)](/2-1-2/documentation/services/flowsync/flowsync-example-2.md), the configuration shows how to return custom error responses for HTTP requests. When a request is received, the system generates a response containing a specific HTTP error code (500) along with a custom error message, demonstrating how to handle error scenarios in your services using FlowSync.

* To call the HttpNode in the example below, run the following command:

{% code lineNumbers="true" %}

```yaml
curl --insecure \
--location 'https://127.0.0.1/data/flowsync/example3' \
--header 'Authorization: Bearer <replace with your token>'
```

{% endcode %}

For more information on the FlowSync configuration properties, see [Cybus:Node](/2-1-2/documentation/services/service-commissioning-files/resources/cybus-node.md#operation).

<figure><img src="/files/pwqYjbnDCH85UesbhM3U" alt=""><figcaption></figcaption></figure>

{% file src="/files/5irFkGWcY8hVibtyrLDF" %}

{% code title="flowsync-example-3-node-with-error-http.yaml" lineNumbers="true" %}

```yaml
description: FlowSync - Example 3

metadata:
  name: example 3
  version: 1.0.0

resources:
  testServer:
    type: Cybus::Server::Http
    properties:
      basePath: /FlowSync

  exampleNode:
    type: Cybus::Node::Http
    properties:
      parent: !ref testServer
      method: GET
      route: /example3
      operation: transaction

  exampleMappings:
    type: Cybus::Mapping
    properties:
      mappings:
        - subscribe:
            endpoint: !ref exampleNode
          publish:
            endpoint: !ref exampleNode
          rules:
            - transform:
                expression: >-
                  (
                    {
                      "id": $.id,
                      "timestamp": $.timestamp,
                      "error": {
                        "code": 500,
                        "message" : "This is an error message to your HTTP GET request."}
                    }
                  )
```

{% endcode %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.cybus.io/2-1-2/documentation/services/flowsync/flowsync-example-3.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
