# Integrating with the Agent

The [Rekor Scout® Agent](https://docs.rekor.ai/scout/agent) runs as either a service (on Windows) or a daemon (on Linux). The process runs constantly in the background, watching the configured video streams for license plates. When a license plate is found, it immediately places JSON data onto a local beanstalkd queue for uploading or processing.

Decide whether your application should receive data from Rekor Scout (sent via HTTP POST) or pull data from a queue on demand. Both approaches are equally valid; your choice simply depends on the most appropriate integration method based on your application architecture.

The JSON for both plate and group results contains a `camera_id` field which corresponds to the numeric identifier in the camera's `.conf` file (located in `/etc/openalpr/stream.d` on Linux and `C:\OpenALPR\Agent\etc\openalpr\stream.d` on Windows). Typically this is randomly generated and since only numbers are allowed, it can be more useful to obtain a human-readable string identifier for the camera. To do this, you will need to build and monitor an ID to name mapping using the `video_streams` field of the JSON heartbeat.

If you need to receive additional information from the agent beyond the fields included in this section's JSON templates, you can set the `user_data` field of your `alprd.conf`. This can contain any arbitrary string that will be sent with every payload from the agent.
