---
title: Convert results to JSON
description: Use json.encode() to convert query results to JSON and http.post() to send them to a URL endpoint.
url: https://docs.influxdata.com/influxdb/v2/process-data/common-tasks/convert_results_to_json/
estimated_tokens: 513
product: InfluxDB OSS v2
version: v2
publisher: InfluxData
canonical: https://docs.influxdata.com/influxdb/v2/process-data/common-tasks/convert_results_to_json/
date: '2023-09-12T23:33:31-06:00'
lastmod: '2023-09-12T23:33:31-06:00'
---

This page documents an earlier version of InfluxDB OSS.[InfluxDB 3 Core](/influxdb3/core/) is the latest stable version.

#### API token hashing is enabled by default in InfluxDB OSS 2.9.0

Stronger token security: tokens are stored as hashes on disk, so a
copy of the database file doesn’t expose usable tokens. Existing
tokens are hashed on first startup and the original strings can’t
be recovered afterward — **capture any plaintext tokens you still
need before you upgrade**.

For more information, see [Token hashing](/influxdb/v2/admin/tokens/#token-hashing).

> [!Note]
> This example uses [NOAA water sample data](/influxdb/v2/reference/sample-data/#noaa-water-sample-data).

Send each record to a URL endpoint using the HTTP POST method. This example uses [`json.encode()`](/flux/v0/stdlib/json/encode/) to convert a value into JSON bytes, then uses [`http.post()`](/flux/v0/stdlib/http/post/) to send them to a URL endpoint.

The following query:

* Uses [`filter()`](/flux/v0/stdlib/universe/filter/) to filter the `average_temperature` measurement.
* Uses [`mean()`](/flux/v0/stdlib/universe/mean/) to calculate the average value from results.
* Uses [`map()`](/flux/v0/stdlib/universe/map/) to create a new column, `jsonStr`, and build a JSON object using column values from the query. It then byte-encodes the JSON object and stores it as a string in the `jsonStr` column.
* Uses [`http.post()`](/flux/v0/stdlib/http/post/) to send the `jsonStr` value from each record to an HTTP endpoint.

```js
import "http"
import "json"

from(bucket: "noaa")
    |> filter(fn: (r) => r._measurement == "average_temperature")
    |> mean()
    |> map(fn: (r) => ({r with jsonStr: string(v: json.encode(v: {"location": r.location, "mean": r._value}))}))
    |> map(
        fn: (r) => ({
            r with
            status_code: http.post(
                url: "http://somehost.com/",
                headers: {x: "a", y: "b"},
                data: bytes(v: r.jsonStr)
            )
        })
    )
```

[tasks](/influxdb/v2/tags/tasks/)
