> For the complete documentation index, see [llms.txt](https://docs.onum.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.onum.com/listeners/listener-integrations/collect-data-using-http/collect-data-from-pingid-via-http.md).

# Collect data from PingID via HTTP

{% hint style="info" %}
See the changelog of the **HTTP** Listener [here](/listeners-changelog/http-listener.md).
{% endhint %}

## Overview

The following article outlines a basic data flow from **PingID** to the Onum **HTTP** Listener.

## Prerequisites

[Contact Onum](broken://spaces/cSjT21I4EUhzghjc1rER/pages/nW8oZycpfVthtI5KYdQs) to get the cert information needed for TLS communication, which will be needed on the Listener setup.

## PingID Setup

{% hint style="warning" %}
[Contact us](https://supportportal.crowdstrike.com/s/get-help) if you cannot generate a JWT token.
{% endhint %}

## Onum Setup

{% stepper %}
{% step %}
Log in to your Onum tenant and click **Listeners > New listener**.
{% endstep %}

{% step %}
Double-click the **HTTP** Listener.
{% endstep %}

{% step %}
Enter a **Name** for the new Listener. Optionally, add a **Description** and some **Tags** to identify the Listener.
{% endstep %}

{% step %}
In the **Socket** section, enter the required **Port**. By default, all ports from `1024` to `10000` are open.
{% endstep %}

{% step %}
In the **TLS configuration** section, enter the data you received from the Onum team (**Certificate**, **Private key** and **CA chain**). Choose **No client certificate** as **Client authentication method** and **TLS v.1.0** as the **Minimum TLS version**.
{% endstep %}

{% step %}
In the **Authentication** section, choose **Bearer** as the **Authentication Type**. Open the T**oken Secret** field and click **New secret** to create a new one:

* Give the token a **Name**.
* Turn off the **Expiration date** option.
* Click **Add new value** and paste the secret corresponding to the JWT token you generated before. Remember that the token will be added in the PingID configuration.
* Click **Save**.

<figure><picture><source srcset="/files/NeeWsSQzoChVxRIY76Nt" media="(prefers-color-scheme: dark)"><img src="/files/1oTccyPmgZJ1laY7IhZH" alt=""></picture><figcaption></figcaption></figure>

{% hint style="success" %}
Learn more about secrets in Onum in [this article](/settings/organization-settings/secrets-management.md).
{% endhint %}
{% endstep %}

{% step %}
You can now select the secret you just created in the **Token Secret** field.
{% endstep %}

{% step %}
In the **Endpoint** section, choose **POST** as the **HTTP Method**. In the **Request path** field, enter `/`
{% endstep %}

{% step %}
In the **Message extraction** section, choose **Multiple events at body as stacked JSON** in the **Strategy** field. You can leave the **Extraction info** field empty.
{% endstep %}

{% step %}
In the **General behavior** section, set **Propagate headers strategy** to **None** (default option).
{% endstep %}

{% step %}
Then, configure the following settings:

* **Exported headers format** - Choose the required format for your headers. Choose **JSON** (default value).
* **Maximum message length** - Maximum characters of the message. The default value is `4096`.
* **Response code** - Specify the response code to show when successful. You must choose **200 OK**.
* **Response Content-Type** - Lets the server know the expected format of the incoming message or request. In this case, choose **application/json**.
* **Response text** - The text that will show in case of success.
  {% endstep %}

{% step %}
Finally, click **Create labels**. Optionally, you can set labels to be used for internal Onum routing of data. By default, data will be set as **Unlabeled**. Click **Create listener** when you're done.

{% hint style="success" %}
Learn more about labels in [this article](/listeners/labels.md).
{% endhint %}
{% endstep %}
{% endstepper %}
