POST playablelocations.logImpressions
{{baseUrl}}/v3:logImpressions
BODY json

{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "impressions": [
    {
      "gameObjectType": 0,
      "impressionType": "",
      "locationName": ""
    }
  ],
  "requestId": ""
}
Examples
REQUEST

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "{{baseUrl}}/v3:logImpressions");

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  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\n}");

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

(client/post "{{baseUrl}}/v3:logImpressions" {:content-type :json
                                                              :form-params {:clientInfo {:apiClient ""
                                                                                         :applicationId ""
                                                                                         :applicationVersion ""
                                                                                         :deviceModel ""
                                                                                         :languageCode ""
                                                                                         :operatingSystem ""
                                                                                         :operatingSystemBuild ""
                                                                                         :platform ""}
                                                                            :impressions [{:gameObjectType 0
                                                                                           :impressionType ""
                                                                                           :locationName ""}]
                                                                            :requestId ""}})
require "http/client"

url = "{{baseUrl}}/v3:logImpressions"
headers = HTTP::Headers{
  "content-type" => "application/json"
}
reqBody = "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\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}}/v3:logImpressions"),
    Content = new StringContent("{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\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}}/v3:logImpressions");
var request = new RestRequest("", Method.Post);
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\n}", ParameterType.RequestBody);
var response = client.Execute(request);
package main

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

func main() {

	url := "{{baseUrl}}/v3:logImpressions"

	payload := strings.NewReader("{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\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/v3:logImpressions HTTP/1.1
Content-Type: application/json
Host: example.com
Content-Length: 361

{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "impressions": [
    {
      "gameObjectType": 0,
      "impressionType": "",
      "locationName": ""
    }
  ],
  "requestId": ""
}
AsyncHttpClient client = new DefaultAsyncHttpClient();
client.prepare("POST", "{{baseUrl}}/v3:logImpressions")
  .setHeader("content-type", "application/json")
  .setBody("{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\n}")
  .execute()
  .toCompletableFuture()
  .thenAccept(System.out::println)
  .join();

client.close();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("{{baseUrl}}/v3:logImpressions"))
    .header("content-type", "application/json")
    .method("POST", HttpRequest.BodyPublishers.ofString("{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\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  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\n}");
Request request = new Request.Builder()
  .url("{{baseUrl}}/v3:logImpressions")
  .post(body)
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
HttpResponse response = Unirest.post("{{baseUrl}}/v3:logImpressions")
  .header("content-type", "application/json")
  .body("{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\n}")
  .asString();
const data = JSON.stringify({
  clientInfo: {
    apiClient: '',
    applicationId: '',
    applicationVersion: '',
    deviceModel: '',
    languageCode: '',
    operatingSystem: '',
    operatingSystemBuild: '',
    platform: ''
  },
  impressions: [
    {
      gameObjectType: 0,
      impressionType: '',
      locationName: ''
    }
  ],
  requestId: ''
});

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

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

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

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

const options = {
  method: 'POST',
  url: '{{baseUrl}}/v3:logImpressions',
  headers: {'content-type': 'application/json'},
  data: {
    clientInfo: {
      apiClient: '',
      applicationId: '',
      applicationVersion: '',
      deviceModel: '',
      languageCode: '',
      operatingSystem: '',
      operatingSystemBuild: '',
      platform: ''
    },
    impressions: [{gameObjectType: 0, impressionType: '', locationName: ''}],
    requestId: ''
  }
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const url = '{{baseUrl}}/v3:logImpressions';
const options = {
  method: 'POST',
  headers: {'content-type': 'application/json'},
  body: '{"clientInfo":{"apiClient":"","applicationId":"","applicationVersion":"","deviceModel":"","languageCode":"","operatingSystem":"","operatingSystemBuild":"","platform":""},"impressions":[{"gameObjectType":0,"impressionType":"","locationName":""}],"requestId":""}'
};

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}}/v3:logImpressions',
  method: 'POST',
  headers: {
    'content-type': 'application/json'
  },
  processData: false,
  data: '{\n  "clientInfo": {\n    "apiClient": "",\n    "applicationId": "",\n    "applicationVersion": "",\n    "deviceModel": "",\n    "languageCode": "",\n    "operatingSystem": "",\n    "operatingSystemBuild": "",\n    "platform": ""\n  },\n  "impressions": [\n    {\n      "gameObjectType": 0,\n      "impressionType": "",\n      "locationName": ""\n    }\n  ],\n  "requestId": ""\n}'
};

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

val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\n}")
val request = Request.Builder()
  .url("{{baseUrl}}/v3:logImpressions")
  .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/v3:logImpressions',
  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({
  clientInfo: {
    apiClient: '',
    applicationId: '',
    applicationVersion: '',
    deviceModel: '',
    languageCode: '',
    operatingSystem: '',
    operatingSystemBuild: '',
    platform: ''
  },
  impressions: [{gameObjectType: 0, impressionType: '', locationName: ''}],
  requestId: ''
}));
req.end();
const request = require('request');

const options = {
  method: 'POST',
  url: '{{baseUrl}}/v3:logImpressions',
  headers: {'content-type': 'application/json'},
  body: {
    clientInfo: {
      apiClient: '',
      applicationId: '',
      applicationVersion: '',
      deviceModel: '',
      languageCode: '',
      operatingSystem: '',
      operatingSystemBuild: '',
      platform: ''
    },
    impressions: [{gameObjectType: 0, impressionType: '', locationName: ''}],
    requestId: ''
  },
  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}}/v3:logImpressions');

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

req.type('json');
req.send({
  clientInfo: {
    apiClient: '',
    applicationId: '',
    applicationVersion: '',
    deviceModel: '',
    languageCode: '',
    operatingSystem: '',
    operatingSystemBuild: '',
    platform: ''
  },
  impressions: [
    {
      gameObjectType: 0,
      impressionType: '',
      locationName: ''
    }
  ],
  requestId: ''
});

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}}/v3:logImpressions',
  headers: {'content-type': 'application/json'},
  data: {
    clientInfo: {
      apiClient: '',
      applicationId: '',
      applicationVersion: '',
      deviceModel: '',
      languageCode: '',
      operatingSystem: '',
      operatingSystemBuild: '',
      platform: ''
    },
    impressions: [{gameObjectType: 0, impressionType: '', locationName: ''}],
    requestId: ''
  }
};

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

const url = '{{baseUrl}}/v3:logImpressions';
const options = {
  method: 'POST',
  headers: {'content-type': 'application/json'},
  body: '{"clientInfo":{"apiClient":"","applicationId":"","applicationVersion":"","deviceModel":"","languageCode":"","operatingSystem":"","operatingSystemBuild":"","platform":""},"impressions":[{"gameObjectType":0,"impressionType":"","locationName":""}],"requestId":""}'
};

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 = @{ @"clientInfo": @{ @"apiClient": @"", @"applicationId": @"", @"applicationVersion": @"", @"deviceModel": @"", @"languageCode": @"", @"operatingSystem": @"", @"operatingSystemBuild": @"", @"platform": @"" },
                              @"impressions": @[ @{ @"gameObjectType": @0, @"impressionType": @"", @"locationName": @"" } ],
                              @"requestId": @"" };

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

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"{{baseUrl}}/v3:logImpressions"]
                                                       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}}/v3:logImpressions" in
let headers = Header.add (Header.init ()) "content-type" "application/json" in
let body = Cohttp_lwt_body.of_string "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\n}" in

Client.call ~headers ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)
 "{{baseUrl}}/v3:logImpressions",
  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([
    'clientInfo' => [
        'apiClient' => '',
        'applicationId' => '',
        'applicationVersion' => '',
        'deviceModel' => '',
        'languageCode' => '',
        'operatingSystem' => '',
        'operatingSystemBuild' => '',
        'platform' => ''
    ],
    'impressions' => [
        [
                'gameObjectType' => 0,
                'impressionType' => '',
                'locationName' => ''
        ]
    ],
    'requestId' => ''
  ]),
  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}}/v3:logImpressions', [
  'body' => '{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "impressions": [
    {
      "gameObjectType": 0,
      "impressionType": "",
      "locationName": ""
    }
  ],
  "requestId": ""
}',
  'headers' => [
    'content-type' => 'application/json',
  ],
]);

echo $response->getBody();
setUrl('{{baseUrl}}/v3:logImpressions');
$request->setMethod(HTTP_METH_POST);

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

$request->setContentType('application/json');
$request->setBody(json_encode([
  'clientInfo' => [
    'apiClient' => '',
    'applicationId' => '',
    'applicationVersion' => '',
    'deviceModel' => '',
    'languageCode' => '',
    'operatingSystem' => '',
    'operatingSystemBuild' => '',
    'platform' => ''
  ],
  'impressions' => [
    [
        'gameObjectType' => 0,
        'impressionType' => '',
        'locationName' => ''
    ]
  ],
  'requestId' => ''
]));

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

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
append(json_encode([
  'clientInfo' => [
    'apiClient' => '',
    'applicationId' => '',
    'applicationVersion' => '',
    'deviceModel' => '',
    'languageCode' => '',
    'operatingSystem' => '',
    'operatingSystemBuild' => '',
    'platform' => ''
  ],
  'impressions' => [
    [
        'gameObjectType' => 0,
        'impressionType' => '',
        'locationName' => ''
    ]
  ],
  'requestId' => ''
]));
$request->setRequestUrl('{{baseUrl}}/v3:logImpressions');
$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}}/v3:logImpressions' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "impressions": [
    {
      "gameObjectType": 0,
      "impressionType": "",
      "locationName": ""
    }
  ],
  "requestId": ""
}'
$headers=@{}
$headers.Add("content-type", "application/json")
$response = Invoke-RestMethod -Uri '{{baseUrl}}/v3:logImpressions' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "impressions": [
    {
      "gameObjectType": 0,
      "impressionType": "",
      "locationName": ""
    }
  ],
  "requestId": ""
}'
import http.client

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

payload = "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\n}"

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

conn.request("POST", "/baseUrl/v3:logImpressions", payload, headers)

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

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

url = "{{baseUrl}}/v3:logImpressions"

payload = {
    "clientInfo": {
        "apiClient": "",
        "applicationId": "",
        "applicationVersion": "",
        "deviceModel": "",
        "languageCode": "",
        "operatingSystem": "",
        "operatingSystemBuild": "",
        "platform": ""
    },
    "impressions": [
        {
            "gameObjectType": 0,
            "impressionType": "",
            "locationName": ""
        }
    ],
    "requestId": ""
}
headers = {"content-type": "application/json"}

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

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

url <- "{{baseUrl}}/v3:logImpressions"

payload <- "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\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}}/v3:logImpressions")

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  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\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/v3:logImpressions') do |req|
  req.body = "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"impressions\": [\n    {\n      \"gameObjectType\": 0,\n      \"impressionType\": \"\",\n      \"locationName\": \"\"\n    }\n  ],\n  \"requestId\": \"\"\n}"
end

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

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

    let payload = json!({
        "clientInfo": json!({
            "apiClient": "",
            "applicationId": "",
            "applicationVersion": "",
            "deviceModel": "",
            "languageCode": "",
            "operatingSystem": "",
            "operatingSystemBuild": "",
            "platform": ""
        }),
        "impressions": (
            json!({
                "gameObjectType": 0,
                "impressionType": "",
                "locationName": ""
            })
        ),
        "requestId": ""
    });

    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}}/v3:logImpressions \
  --header 'content-type: application/json' \
  --data '{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "impressions": [
    {
      "gameObjectType": 0,
      "impressionType": "",
      "locationName": ""
    }
  ],
  "requestId": ""
}'
echo '{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "impressions": [
    {
      "gameObjectType": 0,
      "impressionType": "",
      "locationName": ""
    }
  ],
  "requestId": ""
}' |  \
  http POST {{baseUrl}}/v3:logImpressions \
  content-type:application/json
wget --quiet \
  --method POST \
  --header 'content-type: application/json' \
  --body-data '{\n  "clientInfo": {\n    "apiClient": "",\n    "applicationId": "",\n    "applicationVersion": "",\n    "deviceModel": "",\n    "languageCode": "",\n    "operatingSystem": "",\n    "operatingSystemBuild": "",\n    "platform": ""\n  },\n  "impressions": [\n    {\n      "gameObjectType": 0,\n      "impressionType": "",\n      "locationName": ""\n    }\n  ],\n  "requestId": ""\n}' \
  --output-document \
  - {{baseUrl}}/v3:logImpressions
import Foundation

let headers = ["content-type": "application/json"]
let parameters = [
  "clientInfo": [
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  ],
  "impressions": [
    [
      "gameObjectType": 0,
      "impressionType": "",
      "locationName": ""
    ]
  ],
  "requestId": ""
] as [String : Any]

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

let request = NSMutableURLRequest(url: NSURL(string: "{{baseUrl}}/v3:logImpressions")! 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()
POST playablelocations.logPlayerReports
{{baseUrl}}/v3:logPlayerReports
BODY json

{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "playerReports": [
    {
      "languageCode": "",
      "locationName": "",
      "reasonDetails": "",
      "reasons": []
    }
  ],
  "requestId": ""
}
Examples
REQUEST

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "{{baseUrl}}/v3:logPlayerReports");

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  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\n}");

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

(client/post "{{baseUrl}}/v3:logPlayerReports" {:content-type :json
                                                                :form-params {:clientInfo {:apiClient ""
                                                                                           :applicationId ""
                                                                                           :applicationVersion ""
                                                                                           :deviceModel ""
                                                                                           :languageCode ""
                                                                                           :operatingSystem ""
                                                                                           :operatingSystemBuild ""
                                                                                           :platform ""}
                                                                              :playerReports [{:languageCode ""
                                                                                               :locationName ""
                                                                                               :reasonDetails ""
                                                                                               :reasons []}]
                                                                              :requestId ""}})
require "http/client"

url = "{{baseUrl}}/v3:logPlayerReports"
headers = HTTP::Headers{
  "content-type" => "application/json"
}
reqBody = "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\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}}/v3:logPlayerReports"),
    Content = new StringContent("{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\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}}/v3:logPlayerReports");
var request = new RestRequest("", Method.Post);
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\n}", ParameterType.RequestBody);
var response = client.Execute(request);
package main

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

func main() {

	url := "{{baseUrl}}/v3:logPlayerReports"

	payload := strings.NewReader("{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\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/v3:logPlayerReports HTTP/1.1
Content-Type: application/json
Host: example.com
Content-Length: 382

{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "playerReports": [
    {
      "languageCode": "",
      "locationName": "",
      "reasonDetails": "",
      "reasons": []
    }
  ],
  "requestId": ""
}
AsyncHttpClient client = new DefaultAsyncHttpClient();
client.prepare("POST", "{{baseUrl}}/v3:logPlayerReports")
  .setHeader("content-type", "application/json")
  .setBody("{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\n}")
  .execute()
  .toCompletableFuture()
  .thenAccept(System.out::println)
  .join();

client.close();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("{{baseUrl}}/v3:logPlayerReports"))
    .header("content-type", "application/json")
    .method("POST", HttpRequest.BodyPublishers.ofString("{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\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  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\n}");
Request request = new Request.Builder()
  .url("{{baseUrl}}/v3:logPlayerReports")
  .post(body)
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
HttpResponse response = Unirest.post("{{baseUrl}}/v3:logPlayerReports")
  .header("content-type", "application/json")
  .body("{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\n}")
  .asString();
const data = JSON.stringify({
  clientInfo: {
    apiClient: '',
    applicationId: '',
    applicationVersion: '',
    deviceModel: '',
    languageCode: '',
    operatingSystem: '',
    operatingSystemBuild: '',
    platform: ''
  },
  playerReports: [
    {
      languageCode: '',
      locationName: '',
      reasonDetails: '',
      reasons: []
    }
  ],
  requestId: ''
});

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

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

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

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

const options = {
  method: 'POST',
  url: '{{baseUrl}}/v3:logPlayerReports',
  headers: {'content-type': 'application/json'},
  data: {
    clientInfo: {
      apiClient: '',
      applicationId: '',
      applicationVersion: '',
      deviceModel: '',
      languageCode: '',
      operatingSystem: '',
      operatingSystemBuild: '',
      platform: ''
    },
    playerReports: [{languageCode: '', locationName: '', reasonDetails: '', reasons: []}],
    requestId: ''
  }
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const url = '{{baseUrl}}/v3:logPlayerReports';
const options = {
  method: 'POST',
  headers: {'content-type': 'application/json'},
  body: '{"clientInfo":{"apiClient":"","applicationId":"","applicationVersion":"","deviceModel":"","languageCode":"","operatingSystem":"","operatingSystemBuild":"","platform":""},"playerReports":[{"languageCode":"","locationName":"","reasonDetails":"","reasons":[]}],"requestId":""}'
};

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}}/v3:logPlayerReports',
  method: 'POST',
  headers: {
    'content-type': 'application/json'
  },
  processData: false,
  data: '{\n  "clientInfo": {\n    "apiClient": "",\n    "applicationId": "",\n    "applicationVersion": "",\n    "deviceModel": "",\n    "languageCode": "",\n    "operatingSystem": "",\n    "operatingSystemBuild": "",\n    "platform": ""\n  },\n  "playerReports": [\n    {\n      "languageCode": "",\n      "locationName": "",\n      "reasonDetails": "",\n      "reasons": []\n    }\n  ],\n  "requestId": ""\n}'
};

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

val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\n}")
val request = Request.Builder()
  .url("{{baseUrl}}/v3:logPlayerReports")
  .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/v3:logPlayerReports',
  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({
  clientInfo: {
    apiClient: '',
    applicationId: '',
    applicationVersion: '',
    deviceModel: '',
    languageCode: '',
    operatingSystem: '',
    operatingSystemBuild: '',
    platform: ''
  },
  playerReports: [{languageCode: '', locationName: '', reasonDetails: '', reasons: []}],
  requestId: ''
}));
req.end();
const request = require('request');

const options = {
  method: 'POST',
  url: '{{baseUrl}}/v3:logPlayerReports',
  headers: {'content-type': 'application/json'},
  body: {
    clientInfo: {
      apiClient: '',
      applicationId: '',
      applicationVersion: '',
      deviceModel: '',
      languageCode: '',
      operatingSystem: '',
      operatingSystemBuild: '',
      platform: ''
    },
    playerReports: [{languageCode: '', locationName: '', reasonDetails: '', reasons: []}],
    requestId: ''
  },
  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}}/v3:logPlayerReports');

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

req.type('json');
req.send({
  clientInfo: {
    apiClient: '',
    applicationId: '',
    applicationVersion: '',
    deviceModel: '',
    languageCode: '',
    operatingSystem: '',
    operatingSystemBuild: '',
    platform: ''
  },
  playerReports: [
    {
      languageCode: '',
      locationName: '',
      reasonDetails: '',
      reasons: []
    }
  ],
  requestId: ''
});

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}}/v3:logPlayerReports',
  headers: {'content-type': 'application/json'},
  data: {
    clientInfo: {
      apiClient: '',
      applicationId: '',
      applicationVersion: '',
      deviceModel: '',
      languageCode: '',
      operatingSystem: '',
      operatingSystemBuild: '',
      platform: ''
    },
    playerReports: [{languageCode: '', locationName: '', reasonDetails: '', reasons: []}],
    requestId: ''
  }
};

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

const url = '{{baseUrl}}/v3:logPlayerReports';
const options = {
  method: 'POST',
  headers: {'content-type': 'application/json'},
  body: '{"clientInfo":{"apiClient":"","applicationId":"","applicationVersion":"","deviceModel":"","languageCode":"","operatingSystem":"","operatingSystemBuild":"","platform":""},"playerReports":[{"languageCode":"","locationName":"","reasonDetails":"","reasons":[]}],"requestId":""}'
};

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 = @{ @"clientInfo": @{ @"apiClient": @"", @"applicationId": @"", @"applicationVersion": @"", @"deviceModel": @"", @"languageCode": @"", @"operatingSystem": @"", @"operatingSystemBuild": @"", @"platform": @"" },
                              @"playerReports": @[ @{ @"languageCode": @"", @"locationName": @"", @"reasonDetails": @"", @"reasons": @[  ] } ],
                              @"requestId": @"" };

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

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"{{baseUrl}}/v3:logPlayerReports"]
                                                       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}}/v3:logPlayerReports" in
let headers = Header.add (Header.init ()) "content-type" "application/json" in
let body = Cohttp_lwt_body.of_string "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\n}" in

Client.call ~headers ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)
 "{{baseUrl}}/v3:logPlayerReports",
  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([
    'clientInfo' => [
        'apiClient' => '',
        'applicationId' => '',
        'applicationVersion' => '',
        'deviceModel' => '',
        'languageCode' => '',
        'operatingSystem' => '',
        'operatingSystemBuild' => '',
        'platform' => ''
    ],
    'playerReports' => [
        [
                'languageCode' => '',
                'locationName' => '',
                'reasonDetails' => '',
                'reasons' => [
                                
                ]
        ]
    ],
    'requestId' => ''
  ]),
  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}}/v3:logPlayerReports', [
  'body' => '{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "playerReports": [
    {
      "languageCode": "",
      "locationName": "",
      "reasonDetails": "",
      "reasons": []
    }
  ],
  "requestId": ""
}',
  'headers' => [
    'content-type' => 'application/json',
  ],
]);

echo $response->getBody();
setUrl('{{baseUrl}}/v3:logPlayerReports');
$request->setMethod(HTTP_METH_POST);

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

$request->setContentType('application/json');
$request->setBody(json_encode([
  'clientInfo' => [
    'apiClient' => '',
    'applicationId' => '',
    'applicationVersion' => '',
    'deviceModel' => '',
    'languageCode' => '',
    'operatingSystem' => '',
    'operatingSystemBuild' => '',
    'platform' => ''
  ],
  'playerReports' => [
    [
        'languageCode' => '',
        'locationName' => '',
        'reasonDetails' => '',
        'reasons' => [
                
        ]
    ]
  ],
  'requestId' => ''
]));

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

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
append(json_encode([
  'clientInfo' => [
    'apiClient' => '',
    'applicationId' => '',
    'applicationVersion' => '',
    'deviceModel' => '',
    'languageCode' => '',
    'operatingSystem' => '',
    'operatingSystemBuild' => '',
    'platform' => ''
  ],
  'playerReports' => [
    [
        'languageCode' => '',
        'locationName' => '',
        'reasonDetails' => '',
        'reasons' => [
                
        ]
    ]
  ],
  'requestId' => ''
]));
$request->setRequestUrl('{{baseUrl}}/v3:logPlayerReports');
$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}}/v3:logPlayerReports' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "playerReports": [
    {
      "languageCode": "",
      "locationName": "",
      "reasonDetails": "",
      "reasons": []
    }
  ],
  "requestId": ""
}'
$headers=@{}
$headers.Add("content-type", "application/json")
$response = Invoke-RestMethod -Uri '{{baseUrl}}/v3:logPlayerReports' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "playerReports": [
    {
      "languageCode": "",
      "locationName": "",
      "reasonDetails": "",
      "reasons": []
    }
  ],
  "requestId": ""
}'
import http.client

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

payload = "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\n}"

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

conn.request("POST", "/baseUrl/v3:logPlayerReports", payload, headers)

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

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

url = "{{baseUrl}}/v3:logPlayerReports"

payload = {
    "clientInfo": {
        "apiClient": "",
        "applicationId": "",
        "applicationVersion": "",
        "deviceModel": "",
        "languageCode": "",
        "operatingSystem": "",
        "operatingSystemBuild": "",
        "platform": ""
    },
    "playerReports": [
        {
            "languageCode": "",
            "locationName": "",
            "reasonDetails": "",
            "reasons": []
        }
    ],
    "requestId": ""
}
headers = {"content-type": "application/json"}

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

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

url <- "{{baseUrl}}/v3:logPlayerReports"

payload <- "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\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}}/v3:logPlayerReports")

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  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\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/v3:logPlayerReports') do |req|
  req.body = "{\n  \"clientInfo\": {\n    \"apiClient\": \"\",\n    \"applicationId\": \"\",\n    \"applicationVersion\": \"\",\n    \"deviceModel\": \"\",\n    \"languageCode\": \"\",\n    \"operatingSystem\": \"\",\n    \"operatingSystemBuild\": \"\",\n    \"platform\": \"\"\n  },\n  \"playerReports\": [\n    {\n      \"languageCode\": \"\",\n      \"locationName\": \"\",\n      \"reasonDetails\": \"\",\n      \"reasons\": []\n    }\n  ],\n  \"requestId\": \"\"\n}"
end

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

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

    let payload = json!({
        "clientInfo": json!({
            "apiClient": "",
            "applicationId": "",
            "applicationVersion": "",
            "deviceModel": "",
            "languageCode": "",
            "operatingSystem": "",
            "operatingSystemBuild": "",
            "platform": ""
        }),
        "playerReports": (
            json!({
                "languageCode": "",
                "locationName": "",
                "reasonDetails": "",
                "reasons": ()
            })
        ),
        "requestId": ""
    });

    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}}/v3:logPlayerReports \
  --header 'content-type: application/json' \
  --data '{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "playerReports": [
    {
      "languageCode": "",
      "locationName": "",
      "reasonDetails": "",
      "reasons": []
    }
  ],
  "requestId": ""
}'
echo '{
  "clientInfo": {
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  },
  "playerReports": [
    {
      "languageCode": "",
      "locationName": "",
      "reasonDetails": "",
      "reasons": []
    }
  ],
  "requestId": ""
}' |  \
  http POST {{baseUrl}}/v3:logPlayerReports \
  content-type:application/json
wget --quiet \
  --method POST \
  --header 'content-type: application/json' \
  --body-data '{\n  "clientInfo": {\n    "apiClient": "",\n    "applicationId": "",\n    "applicationVersion": "",\n    "deviceModel": "",\n    "languageCode": "",\n    "operatingSystem": "",\n    "operatingSystemBuild": "",\n    "platform": ""\n  },\n  "playerReports": [\n    {\n      "languageCode": "",\n      "locationName": "",\n      "reasonDetails": "",\n      "reasons": []\n    }\n  ],\n  "requestId": ""\n}' \
  --output-document \
  - {{baseUrl}}/v3:logPlayerReports
import Foundation

let headers = ["content-type": "application/json"]
let parameters = [
  "clientInfo": [
    "apiClient": "",
    "applicationId": "",
    "applicationVersion": "",
    "deviceModel": "",
    "languageCode": "",
    "operatingSystem": "",
    "operatingSystemBuild": "",
    "platform": ""
  ],
  "playerReports": [
    [
      "languageCode": "",
      "locationName": "",
      "reasonDetails": "",
      "reasons": []
    ]
  ],
  "requestId": ""
] as [String : Any]

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

let request = NSMutableURLRequest(url: NSURL(string: "{{baseUrl}}/v3:logPlayerReports")! 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()
POST playablelocations.samplePlayableLocations
{{baseUrl}}/v3:samplePlayableLocations
BODY json

{
  "areaFilter": {
    "s2CellId": ""
  },
  "criteria": [
    {
      "fieldsToReturn": "",
      "filter": {
        "includedTypes": [],
        "maxLocationCount": 0,
        "spacing": {
          "minSpacingMeters": "",
          "pointType": ""
        }
      },
      "gameObjectType": 0
    }
  ]
}
Examples
REQUEST

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "{{baseUrl}}/v3:samplePlayableLocations");

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  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\n    }\n  ]\n}");

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

(client/post "{{baseUrl}}/v3:samplePlayableLocations" {:content-type :json
                                                                       :form-params {:areaFilter {:s2CellId ""}
                                                                                     :criteria [{:fieldsToReturn ""
                                                                                                 :filter {:includedTypes []
                                                                                                          :maxLocationCount 0
                                                                                                          :spacing {:minSpacingMeters ""
                                                                                                                    :pointType ""}}
                                                                                                 :gameObjectType 0}]}})
require "http/client"

url = "{{baseUrl}}/v3:samplePlayableLocations"
headers = HTTP::Headers{
  "content-type" => "application/json"
}
reqBody = "{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\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}}/v3:samplePlayableLocations"),
    Content = new StringContent("{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\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}}/v3:samplePlayableLocations");
var request = new RestRequest("", Method.Post);
request.AddHeader("content-type", "application/json");
request.AddParameter("application/json", "{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\n    }\n  ]\n}", ParameterType.RequestBody);
var response = client.Execute(request);
package main

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

func main() {

	url := "{{baseUrl}}/v3:samplePlayableLocations"

	payload := strings.NewReader("{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\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/v3:samplePlayableLocations HTTP/1.1
Content-Type: application/json
Host: example.com
Content-Length: 309

{
  "areaFilter": {
    "s2CellId": ""
  },
  "criteria": [
    {
      "fieldsToReturn": "",
      "filter": {
        "includedTypes": [],
        "maxLocationCount": 0,
        "spacing": {
          "minSpacingMeters": "",
          "pointType": ""
        }
      },
      "gameObjectType": 0
    }
  ]
}
AsyncHttpClient client = new DefaultAsyncHttpClient();
client.prepare("POST", "{{baseUrl}}/v3:samplePlayableLocations")
  .setHeader("content-type", "application/json")
  .setBody("{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\n    }\n  ]\n}")
  .execute()
  .toCompletableFuture()
  .thenAccept(System.out::println)
  .join();

client.close();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("{{baseUrl}}/v3:samplePlayableLocations"))
    .header("content-type", "application/json")
    .method("POST", HttpRequest.BodyPublishers.ofString("{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\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  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\n    }\n  ]\n}");
Request request = new Request.Builder()
  .url("{{baseUrl}}/v3:samplePlayableLocations")
  .post(body)
  .addHeader("content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();
HttpResponse response = Unirest.post("{{baseUrl}}/v3:samplePlayableLocations")
  .header("content-type", "application/json")
  .body("{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\n    }\n  ]\n}")
  .asString();
const data = JSON.stringify({
  areaFilter: {
    s2CellId: ''
  },
  criteria: [
    {
      fieldsToReturn: '',
      filter: {
        includedTypes: [],
        maxLocationCount: 0,
        spacing: {
          minSpacingMeters: '',
          pointType: ''
        }
      },
      gameObjectType: 0
    }
  ]
});

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

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

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

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

const options = {
  method: 'POST',
  url: '{{baseUrl}}/v3:samplePlayableLocations',
  headers: {'content-type': 'application/json'},
  data: {
    areaFilter: {s2CellId: ''},
    criteria: [
      {
        fieldsToReturn: '',
        filter: {
          includedTypes: [],
          maxLocationCount: 0,
          spacing: {minSpacingMeters: '', pointType: ''}
        },
        gameObjectType: 0
      }
    ]
  }
};

try {
  const { data } = await axios.request(options);
  console.log(data);
} catch (error) {
  console.error(error);
}
const url = '{{baseUrl}}/v3:samplePlayableLocations';
const options = {
  method: 'POST',
  headers: {'content-type': 'application/json'},
  body: '{"areaFilter":{"s2CellId":""},"criteria":[{"fieldsToReturn":"","filter":{"includedTypes":[],"maxLocationCount":0,"spacing":{"minSpacingMeters":"","pointType":""}},"gameObjectType":0}]}'
};

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}}/v3:samplePlayableLocations',
  method: 'POST',
  headers: {
    'content-type': 'application/json'
  },
  processData: false,
  data: '{\n  "areaFilter": {\n    "s2CellId": ""\n  },\n  "criteria": [\n    {\n      "fieldsToReturn": "",\n      "filter": {\n        "includedTypes": [],\n        "maxLocationCount": 0,\n        "spacing": {\n          "minSpacingMeters": "",\n          "pointType": ""\n        }\n      },\n      "gameObjectType": 0\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  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\n    }\n  ]\n}")
val request = Request.Builder()
  .url("{{baseUrl}}/v3:samplePlayableLocations")
  .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/v3:samplePlayableLocations',
  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({
  areaFilter: {s2CellId: ''},
  criteria: [
    {
      fieldsToReturn: '',
      filter: {
        includedTypes: [],
        maxLocationCount: 0,
        spacing: {minSpacingMeters: '', pointType: ''}
      },
      gameObjectType: 0
    }
  ]
}));
req.end();
const request = require('request');

const options = {
  method: 'POST',
  url: '{{baseUrl}}/v3:samplePlayableLocations',
  headers: {'content-type': 'application/json'},
  body: {
    areaFilter: {s2CellId: ''},
    criteria: [
      {
        fieldsToReturn: '',
        filter: {
          includedTypes: [],
          maxLocationCount: 0,
          spacing: {minSpacingMeters: '', pointType: ''}
        },
        gameObjectType: 0
      }
    ]
  },
  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}}/v3:samplePlayableLocations');

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

req.type('json');
req.send({
  areaFilter: {
    s2CellId: ''
  },
  criteria: [
    {
      fieldsToReturn: '',
      filter: {
        includedTypes: [],
        maxLocationCount: 0,
        spacing: {
          minSpacingMeters: '',
          pointType: ''
        }
      },
      gameObjectType: 0
    }
  ]
});

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}}/v3:samplePlayableLocations',
  headers: {'content-type': 'application/json'},
  data: {
    areaFilter: {s2CellId: ''},
    criteria: [
      {
        fieldsToReturn: '',
        filter: {
          includedTypes: [],
          maxLocationCount: 0,
          spacing: {minSpacingMeters: '', pointType: ''}
        },
        gameObjectType: 0
      }
    ]
  }
};

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

const url = '{{baseUrl}}/v3:samplePlayableLocations';
const options = {
  method: 'POST',
  headers: {'content-type': 'application/json'},
  body: '{"areaFilter":{"s2CellId":""},"criteria":[{"fieldsToReturn":"","filter":{"includedTypes":[],"maxLocationCount":0,"spacing":{"minSpacingMeters":"","pointType":""}},"gameObjectType":0}]}'
};

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 = @{ @"areaFilter": @{ @"s2CellId": @"" },
                              @"criteria": @[ @{ @"fieldsToReturn": @"", @"filter": @{ @"includedTypes": @[  ], @"maxLocationCount": @0, @"spacing": @{ @"minSpacingMeters": @"", @"pointType": @"" } }, @"gameObjectType": @0 } ] };

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

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"{{baseUrl}}/v3:samplePlayableLocations"]
                                                       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}}/v3:samplePlayableLocations" in
let headers = Header.add (Header.init ()) "content-type" "application/json" in
let body = Cohttp_lwt_body.of_string "{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\n    }\n  ]\n}" in

Client.call ~headers ~body `POST uri
>>= fun (res, body_stream) ->
  (* Do stuff with the result *)
 "{{baseUrl}}/v3:samplePlayableLocations",
  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([
    'areaFilter' => [
        's2CellId' => ''
    ],
    'criteria' => [
        [
                'fieldsToReturn' => '',
                'filter' => [
                                'includedTypes' => [
                                                                
                                ],
                                'maxLocationCount' => 0,
                                'spacing' => [
                                                                'minSpacingMeters' => '',
                                                                'pointType' => ''
                                ]
                ],
                'gameObjectType' => 0
        ]
    ]
  ]),
  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}}/v3:samplePlayableLocations', [
  'body' => '{
  "areaFilter": {
    "s2CellId": ""
  },
  "criteria": [
    {
      "fieldsToReturn": "",
      "filter": {
        "includedTypes": [],
        "maxLocationCount": 0,
        "spacing": {
          "minSpacingMeters": "",
          "pointType": ""
        }
      },
      "gameObjectType": 0
    }
  ]
}',
  'headers' => [
    'content-type' => 'application/json',
  ],
]);

echo $response->getBody();
setUrl('{{baseUrl}}/v3:samplePlayableLocations');
$request->setMethod(HTTP_METH_POST);

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

$request->setContentType('application/json');
$request->setBody(json_encode([
  'areaFilter' => [
    's2CellId' => ''
  ],
  'criteria' => [
    [
        'fieldsToReturn' => '',
        'filter' => [
                'includedTypes' => [
                                
                ],
                'maxLocationCount' => 0,
                'spacing' => [
                                'minSpacingMeters' => '',
                                'pointType' => ''
                ]
        ],
        'gameObjectType' => 0
    ]
  ]
]));

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

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
append(json_encode([
  'areaFilter' => [
    's2CellId' => ''
  ],
  'criteria' => [
    [
        'fieldsToReturn' => '',
        'filter' => [
                'includedTypes' => [
                                
                ],
                'maxLocationCount' => 0,
                'spacing' => [
                                'minSpacingMeters' => '',
                                'pointType' => ''
                ]
        ],
        'gameObjectType' => 0
    ]
  ]
]));
$request->setRequestUrl('{{baseUrl}}/v3:samplePlayableLocations');
$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}}/v3:samplePlayableLocations' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
  "areaFilter": {
    "s2CellId": ""
  },
  "criteria": [
    {
      "fieldsToReturn": "",
      "filter": {
        "includedTypes": [],
        "maxLocationCount": 0,
        "spacing": {
          "minSpacingMeters": "",
          "pointType": ""
        }
      },
      "gameObjectType": 0
    }
  ]
}'
$headers=@{}
$headers.Add("content-type", "application/json")
$response = Invoke-RestMethod -Uri '{{baseUrl}}/v3:samplePlayableLocations' -Method POST -Headers $headers -ContentType 'application/json' -Body '{
  "areaFilter": {
    "s2CellId": ""
  },
  "criteria": [
    {
      "fieldsToReturn": "",
      "filter": {
        "includedTypes": [],
        "maxLocationCount": 0,
        "spacing": {
          "minSpacingMeters": "",
          "pointType": ""
        }
      },
      "gameObjectType": 0
    }
  ]
}'
import http.client

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

payload = "{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\n    }\n  ]\n}"

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

conn.request("POST", "/baseUrl/v3:samplePlayableLocations", payload, headers)

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

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

url = "{{baseUrl}}/v3:samplePlayableLocations"

payload = {
    "areaFilter": { "s2CellId": "" },
    "criteria": [
        {
            "fieldsToReturn": "",
            "filter": {
                "includedTypes": [],
                "maxLocationCount": 0,
                "spacing": {
                    "minSpacingMeters": "",
                    "pointType": ""
                }
            },
            "gameObjectType": 0
        }
    ]
}
headers = {"content-type": "application/json"}

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

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

url <- "{{baseUrl}}/v3:samplePlayableLocations"

payload <- "{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\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}}/v3:samplePlayableLocations")

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  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\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/v3:samplePlayableLocations') do |req|
  req.body = "{\n  \"areaFilter\": {\n    \"s2CellId\": \"\"\n  },\n  \"criteria\": [\n    {\n      \"fieldsToReturn\": \"\",\n      \"filter\": {\n        \"includedTypes\": [],\n        \"maxLocationCount\": 0,\n        \"spacing\": {\n          \"minSpacingMeters\": \"\",\n          \"pointType\": \"\"\n        }\n      },\n      \"gameObjectType\": 0\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}}/v3:samplePlayableLocations";

    let payload = json!({
        "areaFilter": json!({"s2CellId": ""}),
        "criteria": (
            json!({
                "fieldsToReturn": "",
                "filter": json!({
                    "includedTypes": (),
                    "maxLocationCount": 0,
                    "spacing": json!({
                        "minSpacingMeters": "",
                        "pointType": ""
                    })
                }),
                "gameObjectType": 0
            })
        )
    });

    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}}/v3:samplePlayableLocations \
  --header 'content-type: application/json' \
  --data '{
  "areaFilter": {
    "s2CellId": ""
  },
  "criteria": [
    {
      "fieldsToReturn": "",
      "filter": {
        "includedTypes": [],
        "maxLocationCount": 0,
        "spacing": {
          "minSpacingMeters": "",
          "pointType": ""
        }
      },
      "gameObjectType": 0
    }
  ]
}'
echo '{
  "areaFilter": {
    "s2CellId": ""
  },
  "criteria": [
    {
      "fieldsToReturn": "",
      "filter": {
        "includedTypes": [],
        "maxLocationCount": 0,
        "spacing": {
          "minSpacingMeters": "",
          "pointType": ""
        }
      },
      "gameObjectType": 0
    }
  ]
}' |  \
  http POST {{baseUrl}}/v3:samplePlayableLocations \
  content-type:application/json
wget --quiet \
  --method POST \
  --header 'content-type: application/json' \
  --body-data '{\n  "areaFilter": {\n    "s2CellId": ""\n  },\n  "criteria": [\n    {\n      "fieldsToReturn": "",\n      "filter": {\n        "includedTypes": [],\n        "maxLocationCount": 0,\n        "spacing": {\n          "minSpacingMeters": "",\n          "pointType": ""\n        }\n      },\n      "gameObjectType": 0\n    }\n  ]\n}' \
  --output-document \
  - {{baseUrl}}/v3:samplePlayableLocations
import Foundation

let headers = ["content-type": "application/json"]
let parameters = [
  "areaFilter": ["s2CellId": ""],
  "criteria": [
    [
      "fieldsToReturn": "",
      "filter": [
        "includedTypes": [],
        "maxLocationCount": 0,
        "spacing": [
          "minSpacingMeters": "",
          "pointType": ""
        ]
      ],
      "gameObjectType": 0
    ]
  ]
] as [String : Any]

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

let request = NSMutableURLRequest(url: NSURL(string: "{{baseUrl}}/v3:samplePlayableLocations")! 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()