POST trafficdirector.discovery.client_status
{{baseUrl}}/v2/discovery:client_status
BODY json

{
  "nodeMatchers": [
    {
      "nodeId": {
        "exact": "",
        "ignoreCase": false,
        "prefix": "",
        "regex": "",
        "safeRegex": {
          "googleRe2": {
            "maxProgramSize": 0
          },
          "regex": ""
        },
        "suffix": ""
      },
      "nodeMetadatas": [
        {
          "path": [
            {
              "key": ""
            }
          ],
          "value": {
            "boolMatch": false,
            "doubleMatch": {
              "exact": "",
              "range": {
                "end": "",
                "start": ""
              }
            },
            "listMatch": {
              "oneOf": ""
            },
            "nullMatch": {},
            "presentMatch": false,
            "stringMatch": {}
          }
        }
      ]
    }
  ]
}
Examples
REQUEST

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "{{baseUrl}}/v2/discovery:client_status");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "content-type: application/json");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, "{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}");

CURLcode ret = curl_easy_perform(hnd);
(require '[clj-http.client :as client])

(client/post "{{baseUrl}}/v2/discovery:client_status" {:content-type :json
                                                                       :form-params {:nodeMatchers [{:nodeId {:exact ""
                                                                                                              :ignoreCase false
                                                                                                              :prefix ""
                                                                                                              :regex ""
                                                                                                              :safeRegex {:googleRe2 {:maxProgramSize 0}
                                                                                                                          :regex ""}
                                                                                                              :suffix ""}
                                                                                                     :nodeMetadatas [{:path [{:key ""}]
                                                                                                                      :value {:boolMatch false
                                                                                                                              :doubleMatch {:exact ""
                                                                                                                                            :range {:end ""
                                                                                                                                                    :start ""}}
                                                                                                                              :listMatch {:oneOf ""}
                                                                                                                              :nullMatch {}
                                                                                                                              :presentMatch false
                                                                                                                              :stringMatch {}}}]}]}})
require "http/client"

url = "{{baseUrl}}/v2/discovery:client_status"
headers = HTTP::Headers{
  "content-type" => "application/json"
}
reqBody = "{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}"

response = HTTP::Client.post url, headers: headers, body: reqBody
puts response.body
using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
    Method = HttpMethod.Post,
    RequestUri = new Uri("{{baseUrl}}/v2/discovery:client_status"),
    Content = new StringContent("{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}")
    {
        Headers =
        {
            ContentType = new MediaTypeHeaderValue("application/json")
        }
    }
};
using (var response = await client.SendAsync(request))
{
    response.EnsureSuccessStatusCode();
    var body = await response.Content.ReadAsStringAsync();
    Console.WriteLine(body);
}
var client = new RestClient("{{baseUrl}}/v2/discovery:client_status");
var request = new RestRequest("", Method.Post);
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}", ParameterType.RequestBody);
var response = client.Execute(request);
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "{{baseUrl}}/v2/discovery:client_status"

	payload := strings.NewReader("{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("content-type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
POST /baseUrl/v2/discovery:client_status HTTP/1.1
Content-Type: application/json
Host: example.com
Content-Length: 838

{
  "nodeMatchers": [
    {
      "nodeId": {
        "exact": "",
        "ignoreCase": false,
        "prefix": "",
        "regex": "",
        "safeRegex": {
          "googleRe2": {
            "maxProgramSize": 0
          },
          "regex": ""
        },
        "suffix": ""
      },
      "nodeMetadatas": [
        {
          "path": [
            {
              "key": ""
            }
          ],
          "value": {
            "boolMatch": false,
            "doubleMatch": {
              "exact": "",
              "range": {
                "end": "",
                "start": ""
              }
            },
            "listMatch": {
              "oneOf": ""
            },
            "nullMatch": {},
            "presentMatch": false,
            "stringMatch": {}
          }
        }
      ]
    }
  ]
}
AsyncHttpClient client = new DefaultAsyncHttpClient();
client.prepare("POST", "{{baseUrl}}/v2/discovery:client_status")
  .setHeader("content-type", "application/json")
  .setBody("{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}")
  .execute()
  .toCompletableFuture()
  .thenAccept(System.out::println)
  .join();

client.close();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("{{baseUrl}}/v2/discovery:client_status"))
    .header("content-type", "application/json")
    .method("POST", HttpRequest.BodyPublishers.ofString("{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}"))
    .build();
HttpResponse response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}");
Request request = new Request.Builder()
  .url("{{baseUrl}}/v2/discovery:client_status")
  .post(body)
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
HttpResponse response = Unirest.post("{{baseUrl}}/v2/discovery:client_status")
  .header("content-type", "application/json")
  .body("{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}")
  .asString();
const data = JSON.stringify({
  nodeMatchers: [
    {
      nodeId: {
        exact: '',
        ignoreCase: false,
        prefix: '',
        regex: '',
        safeRegex: {
          googleRe2: {
            maxProgramSize: 0
          },
          regex: ''
        },
        suffix: ''
      },
      nodeMetadatas: [
        {
          path: [
            {
              key: ''
            }
          ],
          value: {
            boolMatch: false,
            doubleMatch: {
              exact: '',
              range: {
                end: '',
                start: ''
              }
            },
            listMatch: {
              oneOf: ''
            },
            nullMatch: {},
            presentMatch: false,
            stringMatch: {}
          }
        }
      ]
    }
  ]
});

const xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener('readystatechange', function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open('POST', '{{baseUrl}}/v2/discovery:client_status');
xhr.setRequestHeader('content-type', 'application/json');

xhr.send(data);
import axios from 'axios';

const options = {
  method: 'POST',
  url: '{{baseUrl}}/v2/discovery:client_status',
  headers: {'content-type': 'application/json'},
  data: {
    nodeMatchers: [
      {
        nodeId: {
          exact: '',
          ignoreCase: false,
          prefix: '',
          regex: '',
          safeRegex: {googleRe2: {maxProgramSize: 0}, regex: ''},
          suffix: ''
        },
        nodeMetadatas: [
          {
            path: [{key: ''}],
            value: {
              boolMatch: false,
              doubleMatch: {exact: '', range: {end: '', start: ''}},
              listMatch: {oneOf: ''},
              nullMatch: {},
              presentMatch: false,
              stringMatch: {}
            }
          }
        ]
      }
    ]
  }
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const url = '{{baseUrl}}/v2/discovery:client_status';
const options = {
  method: 'POST',
  headers: {'content-type': 'application/json'},
  body: '{"nodeMatchers":[{"nodeId":{"exact":"","ignoreCase":false,"prefix":"","regex":"","safeRegex":{"googleRe2":{"maxProgramSize":0},"regex":""},"suffix":""},"nodeMetadatas":[{"path":[{"key":""}],"value":{"boolMatch":false,"doubleMatch":{"exact":"","range":{"end":"","start":""}},"listMatch":{"oneOf":""},"nullMatch":{},"presentMatch":false,"stringMatch":{}}}]}]}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
const settings = {
  async: true,
  crossDomain: true,
  url: '{{baseUrl}}/v2/discovery:client_status',
  method: 'POST',
  headers: {
    'content-type': 'application/json'
  },
  processData: false,
  data: '{\n  "nodeMatchers": [\n    {\n      "nodeId": {\n        "exact": "",\n        "ignoreCase": false,\n        "prefix": "",\n        "regex": "",\n        "safeRegex": {\n          "googleRe2": {\n            "maxProgramSize": 0\n          },\n          "regex": ""\n        },\n        "suffix": ""\n      },\n      "nodeMetadatas": [\n        {\n          "path": [\n            {\n              "key": ""\n            }\n          ],\n          "value": {\n            "boolMatch": false,\n            "doubleMatch": {\n              "exact": "",\n              "range": {\n                "end": "",\n                "start": ""\n              }\n            },\n            "listMatch": {\n              "oneOf": ""\n            },\n            "nullMatch": {},\n            "presentMatch": false,\n            "stringMatch": {}\n          }\n        }\n      ]\n    }\n  ]\n}'
};

$.ajax(settings).done(function (response) {
  console.log(response);
});
val client = OkHttpClient()

val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}")
val request = Request.Builder()
  .url("{{baseUrl}}/v2/discovery:client_status")
  .post(body)
  .addHeader("content-type", "application/json")
  .build()

val response = client.newCall(request).execute()
const http = require('https');

const options = {
  method: 'POST',
  hostname: 'example.com',
  port: null,
  path: '/baseUrl/v2/discovery:client_status',
  headers: {
    'content-type': 'application/json'
  }
};

const req = http.request(options, function (res) {
  const chunks = [];

  res.on('data', function (chunk) {
    chunks.push(chunk);
  });

  res.on('end', function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});

req.write(JSON.stringify({
  nodeMatchers: [
    {
      nodeId: {
        exact: '',
        ignoreCase: false,
        prefix: '',
        regex: '',
        safeRegex: {googleRe2: {maxProgramSize: 0}, regex: ''},
        suffix: ''
      },
      nodeMetadatas: [
        {
          path: [{key: ''}],
          value: {
            boolMatch: false,
            doubleMatch: {exact: '', range: {end: '', start: ''}},
            listMatch: {oneOf: ''},
            nullMatch: {},
            presentMatch: false,
            stringMatch: {}
          }
        }
      ]
    }
  ]
}));
req.end();
const request = require('request');

const options = {
  method: 'POST',
  url: '{{baseUrl}}/v2/discovery:client_status',
  headers: {'content-type': 'application/json'},
  body: {
    nodeMatchers: [
      {
        nodeId: {
          exact: '',
          ignoreCase: false,
          prefix: '',
          regex: '',
          safeRegex: {googleRe2: {maxProgramSize: 0}, regex: ''},
          suffix: ''
        },
        nodeMetadatas: [
          {
            path: [{key: ''}],
            value: {
              boolMatch: false,
              doubleMatch: {exact: '', range: {end: '', start: ''}},
              listMatch: {oneOf: ''},
              nullMatch: {},
              presentMatch: false,
              stringMatch: {}
            }
          }
        ]
      }
    ]
  },
  json: true
};

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
const unirest = require('unirest');

const req = unirest('POST', '{{baseUrl}}/v2/discovery:client_status');

req.headers({
  'content-type': 'application/json'
});

req.type('json');
req.send({
  nodeMatchers: [
    {
      nodeId: {
        exact: '',
        ignoreCase: false,
        prefix: '',
        regex: '',
        safeRegex: {
          googleRe2: {
            maxProgramSize: 0
          },
          regex: ''
        },
        suffix: ''
      },
      nodeMetadatas: [
        {
          path: [
            {
              key: ''
            }
          ],
          value: {
            boolMatch: false,
            doubleMatch: {
              exact: '',
              range: {
                end: '',
                start: ''
              }
            },
            listMatch: {
              oneOf: ''
            },
            nullMatch: {},
            presentMatch: false,
            stringMatch: {}
          }
        }
      ]
    }
  ]
});

req.end(function (res) {
  if (res.error) throw new Error(res.error);

  console.log(res.body);
});
const axios = require('axios').default;

const options = {
  method: 'POST',
  url: '{{baseUrl}}/v2/discovery:client_status',
  headers: {'content-type': 'application/json'},
  data: {
    nodeMatchers: [
      {
        nodeId: {
          exact: '',
          ignoreCase: false,
          prefix: '',
          regex: '',
          safeRegex: {googleRe2: {maxProgramSize: 0}, regex: ''},
          suffix: ''
        },
        nodeMetadatas: [
          {
            path: [{key: ''}],
            value: {
              boolMatch: false,
              doubleMatch: {exact: '', range: {end: '', start: ''}},
              listMatch: {oneOf: ''},
              nullMatch: {},
              presentMatch: false,
              stringMatch: {}
            }
          }
        ]
      }
    ]
  }
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const fetch = require('node-fetch');

const url = '{{baseUrl}}/v2/discovery:client_status';
const options = {
  method: 'POST',
  headers: {'content-type': 'application/json'},
  body: '{"nodeMatchers":[{"nodeId":{"exact":"","ignoreCase":false,"prefix":"","regex":"","safeRegex":{"googleRe2":{"maxProgramSize":0},"regex":""},"suffix":""},"nodeMetadatas":[{"path":[{"key":""}],"value":{"boolMatch":false,"doubleMatch":{"exact":"","range":{"end":"","start":""}},"listMatch":{"oneOf":""},"nullMatch":{},"presentMatch":false,"stringMatch":{}}}]}]}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
#import 

NSDictionary *headers = @{ @"content-type": @"application/json" };
NSDictionary *parameters = @{ @"nodeMatchers": @[ @{ @"nodeId": @{ @"exact": @"", @"ignoreCase": @NO, @"prefix": @"", @"regex": @"", @"safeRegex": @{ @"googleRe2": @{ @"maxProgramSize": @0 }, @"regex": @"" }, @"suffix": @"" }, @"nodeMetadatas": @[ @{ @"path": @[ @{ @"key": @"" } ], @"value": @{ @"boolMatch": @NO, @"doubleMatch": @{ @"exact": @"", @"range": @{ @"end": @"", @"start": @"" } }, @"listMatch": @{ @"oneOf": @"" }, @"nullMatch": @{  }, @"presentMatch": @NO, @"stringMatch": @{  } } } ] } ] };

NSData *postData = [NSJSONSerialization dataWithJSONObject:parameters options:0 error:nil];

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"{{baseUrl}}/v2/discovery:client_status"]
                                                       cachePolicy:NSURLRequestUseProtocolCachePolicy
                                                   timeoutInterval:10.0];
[request setHTTPMethod:@"POST"];
[request setAllHTTPHeaderFields:headers];
[request setHTTPBody:postData];

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
                                            completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
                                                if (error) {
                                                    NSLog(@"%@", error);
                                                } else {
                                                    NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
                                                    NSLog(@"%@", httpResponse);
                                                }
                                            }];
[dataTask resume];
open Cohttp_lwt_unix
open Cohttp
open Lwt

let uri = Uri.of_string "{{baseUrl}}/v2/discovery:client_status" in
let headers = Header.add (Header.init ()) "content-type" "application/json" in
let body = Cohttp_lwt_body.of_string "{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}" in

Client.call ~headers ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)
 "{{baseUrl}}/v2/discovery:client_status",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => json_encode([
    'nodeMatchers' => [
        [
                'nodeId' => [
                                'exact' => '',
                                'ignoreCase' => null,
                                'prefix' => '',
                                'regex' => '',
                                'safeRegex' => [
                                                                'googleRe2' => [
                                                                                                                                'maxProgramSize' => 0
                                                                ],
                                                                'regex' => ''
                                ],
                                'suffix' => ''
                ],
                'nodeMetadatas' => [
                                [
                                                                'path' => [
                                                                                                                                [
                                                                                                                                                                                                                                                                'key' => ''
                                                                                                                                ]
                                                                ],
                                                                'value' => [
                                                                                                                                'boolMatch' => null,
                                                                                                                                'doubleMatch' => [
                                                                                                                                                                                                                                                                'exact' => '',
                                                                                                                                                                                                                                                                'range' => [
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'end' => '',
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                'start' => ''
                                                                                                                                                                                                                                                                ]
                                                                                                                                ],
                                                                                                                                'listMatch' => [
                                                                                                                                                                                                                                                                'oneOf' => ''
                                                                                                                                ],
                                                                                                                                'nullMatch' => [
                                                                                                                                                                                                                                                                
                                                                                                                                ],
                                                                                                                                'presentMatch' => null,
                                                                                                                                'stringMatch' => [
                                                                                                                                                                                                                                                                
                                                                                                                                ]
                                                                ]
                                ]
                ]
        ]
    ]
  ]),
  CURLOPT_HTTPHEADER => [
    "content-type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
request('POST', '{{baseUrl}}/v2/discovery:client_status', [
  'body' => '{
  "nodeMatchers": [
    {
      "nodeId": {
        "exact": "",
        "ignoreCase": false,
        "prefix": "",
        "regex": "",
        "safeRegex": {
          "googleRe2": {
            "maxProgramSize": 0
          },
          "regex": ""
        },
        "suffix": ""
      },
      "nodeMetadatas": [
        {
          "path": [
            {
              "key": ""
            }
          ],
          "value": {
            "boolMatch": false,
            "doubleMatch": {
              "exact": "",
              "range": {
                "end": "",
                "start": ""
              }
            },
            "listMatch": {
              "oneOf": ""
            },
            "nullMatch": {},
            "presentMatch": false,
            "stringMatch": {}
          }
        }
      ]
    }
  ]
}',
  'headers' => [
    'content-type' => 'application/json',
  ],
]);

echo $response->getBody();
setUrl('{{baseUrl}}/v2/discovery:client_status');
$request->setMethod(HTTP_METH_POST);

$request->setHeaders([
  'content-type' => 'application/json'
]);

$request->setContentType('application/json');
$request->setBody(json_encode([
  'nodeMatchers' => [
    [
        'nodeId' => [
                'exact' => '',
                'ignoreCase' => null,
                'prefix' => '',
                'regex' => '',
                'safeRegex' => [
                                'googleRe2' => [
                                                                'maxProgramSize' => 0
                                ],
                                'regex' => ''
                ],
                'suffix' => ''
        ],
        'nodeMetadatas' => [
                [
                                'path' => [
                                                                [
                                                                                                                                'key' => ''
                                                                ]
                                ],
                                'value' => [
                                                                'boolMatch' => null,
                                                                'doubleMatch' => [
                                                                                                                                'exact' => '',
                                                                                                                                'range' => [
                                                                                                                                                                                                                                                                'end' => '',
                                                                                                                                                                                                                                                                'start' => ''
                                                                                                                                ]
                                                                ],
                                                                'listMatch' => [
                                                                                                                                'oneOf' => ''
                                                                ],
                                                                'nullMatch' => [
                                                                                                                                
                                                                ],
                                                                'presentMatch' => null,
                                                                'stringMatch' => [
                                                                                                                                
                                                                ]
                                ]
                ]
        ]
    ]
  ]
]));

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
append(json_encode([
  'nodeMatchers' => [
    [
        'nodeId' => [
                'exact' => '',
                'ignoreCase' => null,
                'prefix' => '',
                'regex' => '',
                'safeRegex' => [
                                'googleRe2' => [
                                                                'maxProgramSize' => 0
                                ],
                                'regex' => ''
                ],
                'suffix' => ''
        ],
        'nodeMetadatas' => [
                [
                                'path' => [
                                                                [
                                                                                                                                'key' => ''
                                                                ]
                                ],
                                'value' => [
                                                                'boolMatch' => null,
                                                                'doubleMatch' => [
                                                                                                                                'exact' => '',
                                                                                                                                'range' => [
                                                                                                                                                                                                                                                                'end' => '',
                                                                                                                                                                                                                                                                'start' => ''
                                                                                                                                ]
                                                                ],
                                                                'listMatch' => [
                                                                                                                                'oneOf' => ''
                                                                ],
                                                                'nullMatch' => [
                                                                                                                                
                                                                ],
                                                                'presentMatch' => null,
                                                                'stringMatch' => [
                                                                                                                                
                                                                ]
                                ]
                ]
        ]
    ]
  ]
]));
$request->setRequestUrl('{{baseUrl}}/v2/discovery:client_status');
$request->setRequestMethod('POST');
$request->setBody($body);

$request->setHeaders([
  'content-type' => 'application/json'
]);

$client->enqueue($request)->send();
$response = $client->getResponse();

echo $response->getBody();
$headers=@{}
$headers.Add("content-type", "application/json")
$response = Invoke-WebRequest -Uri '{{baseUrl}}/v2/discovery:client_status' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
  "nodeMatchers": [
    {
      "nodeId": {
        "exact": "",
        "ignoreCase": false,
        "prefix": "",
        "regex": "",
        "safeRegex": {
          "googleRe2": {
            "maxProgramSize": 0
          },
          "regex": ""
        },
        "suffix": ""
      },
      "nodeMetadatas": [
        {
          "path": [
            {
              "key": ""
            }
          ],
          "value": {
            "boolMatch": false,
            "doubleMatch": {
              "exact": "",
              "range": {
                "end": "",
                "start": ""
              }
            },
            "listMatch": {
              "oneOf": ""
            },
            "nullMatch": {},
            "presentMatch": false,
            "stringMatch": {}
          }
        }
      ]
    }
  ]
}'
$headers=@{}
$headers.Add("content-type", "application/json")
$response = Invoke-RestMethod -Uri '{{baseUrl}}/v2/discovery:client_status' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
  "nodeMatchers": [
    {
      "nodeId": {
        "exact": "",
        "ignoreCase": false,
        "prefix": "",
        "regex": "",
        "safeRegex": {
          "googleRe2": {
            "maxProgramSize": 0
          },
          "regex": ""
        },
        "suffix": ""
      },
      "nodeMetadatas": [
        {
          "path": [
            {
              "key": ""
            }
          ],
          "value": {
            "boolMatch": false,
            "doubleMatch": {
              "exact": "",
              "range": {
                "end": "",
                "start": ""
              }
            },
            "listMatch": {
              "oneOf": ""
            },
            "nullMatch": {},
            "presentMatch": false,
            "stringMatch": {}
          }
        }
      ]
    }
  ]
}'
import http.client

conn = http.client.HTTPSConnection("example.com")

payload = "{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}"

headers = { 'content-type': "application/json" }

conn.request("POST", "/baseUrl/v2/discovery:client_status", payload, headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))
import requests

url = "{{baseUrl}}/v2/discovery:client_status"

payload = { "nodeMatchers": [
        {
            "nodeId": {
                "exact": "",
                "ignoreCase": False,
                "prefix": "",
                "regex": "",
                "safeRegex": {
                    "googleRe2": { "maxProgramSize": 0 },
                    "regex": ""
                },
                "suffix": ""
            },
            "nodeMetadatas": [
                {
                    "path": [{ "key": "" }],
                    "value": {
                        "boolMatch": False,
                        "doubleMatch": {
                            "exact": "",
                            "range": {
                                "end": "",
                                "start": ""
                            }
                        },
                        "listMatch": { "oneOf": "" },
                        "nullMatch": {},
                        "presentMatch": False,
                        "stringMatch": {}
                    }
                }
            ]
        }
    ] }
headers = {"content-type": "application/json"}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
library(httr)

url <- "{{baseUrl}}/v2/discovery:client_status"

payload <- "{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}"

encode <- "json"

response <- VERB("POST", url, body = payload, content_type("application/json"), encode = encode)

content(response, "text")
require 'uri'
require 'net/http'

url = URI("{{baseUrl}}/v2/discovery:client_status")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["content-type"] = 'application/json'
request.body = "{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}"

response = http.request(request)
puts response.read_body
require 'faraday'

conn = Faraday.new(
  url: 'https://example.com',
  headers: {'Content-Type' => 'application/json'}
)

response = conn.post('/baseUrl/v2/discovery:client_status') do |req|
  req.body = "{\n  \"nodeMatchers\": [\n    {\n      \"nodeId\": {\n        \"exact\": \"\",\n        \"ignoreCase\": false,\n        \"prefix\": \"\",\n        \"regex\": \"\",\n        \"safeRegex\": {\n          \"googleRe2\": {\n            \"maxProgramSize\": 0\n          },\n          \"regex\": \"\"\n        },\n        \"suffix\": \"\"\n      },\n      \"nodeMetadatas\": [\n        {\n          \"path\": [\n            {\n              \"key\": \"\"\n            }\n          ],\n          \"value\": {\n            \"boolMatch\": false,\n            \"doubleMatch\": {\n              \"exact\": \"\",\n              \"range\": {\n                \"end\": \"\",\n                \"start\": \"\"\n              }\n            },\n            \"listMatch\": {\n              \"oneOf\": \"\"\n            },\n            \"nullMatch\": {},\n            \"presentMatch\": false,\n            \"stringMatch\": {}\n          }\n        }\n      ]\n    }\n  ]\n}"
end

puts response.status
puts response.body
use serde_json::json;
use reqwest;

#[tokio::main]
pub async fn main() {
    let url = "{{baseUrl}}/v2/discovery:client_status";

    let payload = json!({"nodeMatchers": (
            json!({
                "nodeId": json!({
                    "exact": "",
                    "ignoreCase": false,
                    "prefix": "",
                    "regex": "",
                    "safeRegex": json!({
                        "googleRe2": json!({"maxProgramSize": 0}),
                        "regex": ""
                    }),
                    "suffix": ""
                }),
                "nodeMetadatas": (
                    json!({
                        "path": (json!({"key": ""})),
                        "value": json!({
                            "boolMatch": false,
                            "doubleMatch": json!({
                                "exact": "",
                                "range": json!({
                                    "end": "",
                                    "start": ""
                                })
                            }),
                            "listMatch": json!({"oneOf": ""}),
                            "nullMatch": json!({}),
                            "presentMatch": false,
                            "stringMatch": json!({})
                        })
                    })
                )
            })
        )});

    let mut headers = reqwest::header::HeaderMap::new();
    headers.insert("content-type", "application/json".parse().unwrap());

    let client = reqwest::Client::new();
    let response = client.post(url)
        .headers(headers)
        .json(&payload)
        .send()
        .await;

    let results = response.unwrap()
        .json::()
        .await
        .unwrap();

    dbg!(results);
}
curl --request POST \
  --url {{baseUrl}}/v2/discovery:client_status \
  --header 'content-type: application/json' \
  --data '{
  "nodeMatchers": [
    {
      "nodeId": {
        "exact": "",
        "ignoreCase": false,
        "prefix": "",
        "regex": "",
        "safeRegex": {
          "googleRe2": {
            "maxProgramSize": 0
          },
          "regex": ""
        },
        "suffix": ""
      },
      "nodeMetadatas": [
        {
          "path": [
            {
              "key": ""
            }
          ],
          "value": {
            "boolMatch": false,
            "doubleMatch": {
              "exact": "",
              "range": {
                "end": "",
                "start": ""
              }
            },
            "listMatch": {
              "oneOf": ""
            },
            "nullMatch": {},
            "presentMatch": false,
            "stringMatch": {}
          }
        }
      ]
    }
  ]
}'
echo '{
  "nodeMatchers": [
    {
      "nodeId": {
        "exact": "",
        "ignoreCase": false,
        "prefix": "",
        "regex": "",
        "safeRegex": {
          "googleRe2": {
            "maxProgramSize": 0
          },
          "regex": ""
        },
        "suffix": ""
      },
      "nodeMetadatas": [
        {
          "path": [
            {
              "key": ""
            }
          ],
          "value": {
            "boolMatch": false,
            "doubleMatch": {
              "exact": "",
              "range": {
                "end": "",
                "start": ""
              }
            },
            "listMatch": {
              "oneOf": ""
            },
            "nullMatch": {},
            "presentMatch": false,
            "stringMatch": {}
          }
        }
      ]
    }
  ]
}' |  \
  http POST {{baseUrl}}/v2/discovery:client_status \
  content-type:application/json
wget --quiet \
  --method POST \
  --header 'content-type: application/json' \
  --body-data '{\n  "nodeMatchers": [\n    {\n      "nodeId": {\n        "exact": "",\n        "ignoreCase": false,\n        "prefix": "",\n        "regex": "",\n        "safeRegex": {\n          "googleRe2": {\n            "maxProgramSize": 0\n          },\n          "regex": ""\n        },\n        "suffix": ""\n      },\n      "nodeMetadatas": [\n        {\n          "path": [\n            {\n              "key": ""\n            }\n          ],\n          "value": {\n            "boolMatch": false,\n            "doubleMatch": {\n              "exact": "",\n              "range": {\n                "end": "",\n                "start": ""\n              }\n            },\n            "listMatch": {\n              "oneOf": ""\n            },\n            "nullMatch": {},\n            "presentMatch": false,\n            "stringMatch": {}\n          }\n        }\n      ]\n    }\n  ]\n}' \
  --output-document \
  - {{baseUrl}}/v2/discovery:client_status
import Foundation

let headers = ["content-type": "application/json"]
let parameters = ["nodeMatchers": [
    [
      "nodeId": [
        "exact": "",
        "ignoreCase": false,
        "prefix": "",
        "regex": "",
        "safeRegex": [
          "googleRe2": ["maxProgramSize": 0],
          "regex": ""
        ],
        "suffix": ""
      ],
      "nodeMetadatas": [
        [
          "path": [["key": ""]],
          "value": [
            "boolMatch": false,
            "doubleMatch": [
              "exact": "",
              "range": [
                "end": "",
                "start": ""
              ]
            ],
            "listMatch": ["oneOf": ""],
            "nullMatch": [],
            "presentMatch": false,
            "stringMatch": []
          ]
        ]
      ]
    ]
  ]] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "{{baseUrl}}/v2/discovery:client_status")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()