> For the complete documentation index, see [llms.txt](https://docs.dbnetsoft.com/dbnetsoft/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.dbnetsoft.com/dbnetsoft/screenspro/sources/http-rest-get.md).

# HTTP REST (GET)

This source calls a URL in a fixed interval and parses the JSON it answers with.

## Settings

| Setting        |          |                                                            |
| -------------- | -------- | ---------------------------------------------------------- |
| Url            | string   | The address that is called.                                |
| Interval       | TimeSpan | How much time passes between two calls. Default 5 seconds. |
| Method         | Enum     | `Get`, which is the only method available.                 |
| ResponseFormat | Enum     | `Json`, which is the only format available.                |

Name and Enabled are described on the [Sources](/dbnetsoft/screenspro/sources.md) page.

## Properties

The following properties are available in addition to the common ones, when using a HTTP REST (GET) source. They can be used by using `{Binding Sources.NameOfSource.Property}` where Property is of the following:

| Property       |        |                                                     |
| -------------- | ------ | --------------------------------------------------- |
| HttpCode       | string | Response status code (e.g. OK or NOTFOUND or other) |
| ResponseString | string | The raw body of the response for debugging.         |
| Value          | object | Result                                              |

## The parsed value

A JSON object becomes an object whose properties are bound by name, and a JSON array becomes a list that is addressed with an index, so a response that starts with `[` is reached as `Value[0]`.

A response that answers with an error status code, that is empty, or that cannot be parsed as JSON sets `IsSuccess` to false and describes the problem in `ErrorText`. The raw body stays available in `ResponseString`, which is what the clipboard button in the Sources tab copies.
