> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.co-din.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How to setup the Crisp Status Reporter library?LibrariesGet your reporter token & node identifierManually report status

Articles on: [Automate](/en/category/automate-h00hj9/)

If you're using Crisp Status to monitor nodes in

` push`

mode, you will need to setup a Crisp Status Reporter on each of your monitored application node.  
  
Crisp Status Reporter libraries are easy to install in your applications. Crisp supports a growing number of application platforms. You may contact us if you need a non-supported programming language or platform added.  
  
  
  
Find a Crisp Status Reporter library for your language:  
  
*   Rust: rs-crisp-status-reporter
  
*   Node: node-crisp-status-reporter
  
*   Golang: go-crisp-status-reporter
  
*   Python: python-crisp-status-reporter
  
  
As each language is different and has its syntax specificities, instructions on how to install a reporter library are available on each library GitHub page.  
  
  
  
When configuring your reporter library in your application, you'll need the following values:

` token`

,

` service_id`

,

` node_id`

.  
  
You can retrieve them from your Crisp Status settings here:  
  
*   Go to your Crisp Dashboard
  
*   Go to Settings, then click on Status Page
  
  

## Get your token

  
  
You can get your secret token in the "Configure your Status Reporter" section.  
  
The token is a chain of alphanumerical characters, separated by dashes.  
  

## Get node identifiers

  
  
You can get your node identifiers (

` node_id`

+

` service_id`

) in the "Manage monitored services" section.  
  
When you hover a node with your mouse, click on "Show details" to reveal the identifiers.  
  
![](https://storage.crisp.chat/users/helpdesk/website/c02d04f3a9994000/b77c7d7f-1d0f-472c-98ab-9dfe50_aucwrt.png)  
  
  
  
This section is only for advanced uses. In some very specific integrations, you may want to push your own status to the Crisp Status Reporter API endpoint, instead of using a library that we provide. Always use our libraries if in doubt of what you need.  
  
Crisp Status exposes a Crisp Status Reporter API endpoint that you can use to do the periodic status push yourself. This section explains the format of a reporting request, and when to trigger such a request.  
  

## Report request format

  
  
API endpoint:

` https://report.crisp.watch/v1/report/[service_id]/[node_id]`

  
  
Replace

` [service_id]`

and

` [node_id]`

with your node identifiers. See "Get node identifiers" above for more on how you can get those identifiers.  
  
Request method:

` HTTP POST`

  
Request authentication:

` Basic Auth`

, with username blank and password to token value (see "Get your token" above)  
Request content type:

` application/json; charset=utf-8`

  
  
Request body:  
  

``` { "replica_id" : "[replica_id]", "interval" : "[interval_seconds]", "load" : { "cpu" : "[cpu_load_average]", "ram" : "[ram_percent_used]" } }```

  
  
Replace:  
  
*   [replica_id]: a replica identifier, can be anything defining the host pushing its status, eg. its IP address like ` 192.168.1.2`
  
*   [interval_seconds]: the interval at which you plan to send periodic reports, in seconds, eg. ` 60` for 1 minute
  
*   [cpu_load_average]: a float number from ` 0.00` to ` 10.00` indicating current CPU load (can be ` 0.00`)
  
*   [ram_percent_used]: a float number from ` 0.00` to ` 1.00` indicating the current percent of RAM used (can be ` 0.00`)
  
  
Reporting requests will only work for nodes in

` push`

mode.  
  

## When to report status

  
  
The status reporting request is to be executed at a fixed interval, eg. every minute. Once you start reporting every minute, and you've set

` interval`

in your request body to eg.

` 60`

seconds, you need to commit to reporting at this interval. If you don't report in time, Crisp Status will mark the node as

` DEAD`

.

Updated on: 23/08/2023