Heartbeats configure http json post request

Hiii , i am new to heartbeats
i need assistance with setup a http post request , how do i configure my json request body ..

here is how i configure mine currently

- type: http
  # Set enabled to true (or delete the following line) to enable this monitor
  enabled: true
  # ID used to uniquely identify this monitor in Elasticsearch even if the config changes
  id: Momoverify-monitor
  # Human readable display name for this service in Uptime UI and elsewhere
  name: Momoverify
  # List of URLs to query
  urls: ["https://*****.******.com/cld/****"]
  # Configure task schedule
  schedule: '@every 60s'
  response.include_body: always
  check.request:
    method: POST
    headers:
      'Content-Type': 'application/json'
    # urlencode the body:
    body: ""

how do i pass the bellow body 
{ "apiId": "myapid",
    "mykey: "7di76u49393fHDeepE4S4zvstlXr",
    "reference": "my referrnce",
    "product": "myproduct",
    "action": "myaction",
    "account": "123456~686"}

Hi @solo_etz,

Welcome to the Elastic Community!

The JSON value can be stringified on a single line or using yaml multine format. This should work:

check.request:
    method: POST
    headers:
      'Content-Type': 'application/json'
    # urlencode the body:
    body: |-
      { "apiId": "myapid",
      "mykey": "7di76u49393fHDeepE4S4zvstlXr",
      "reference": "my referrnce",
      "product": "myproduct",
      "action": "myaction",
      "account": "123456~686"}

As long as you specify the correct Content-Type header, any client should be capable of parsing the request correctly. Hope that helps!