I’m trying to understand how to properly format GraphQL queries for Monday and running into issues.
This is what I have so far
{"query":"mutation { create_item (board_id: 1293347952, item_name: \\"project 1\\", column_values: {\\"status\\": \\"Active\\", \\"text\\": \\"na\\", \\"date4\\": \\"2021-05-29\\"}) { id }}"}
I get the following response
{"errors":"{"message":"Parse error on \\"status\\" (STRING) at t1, 86]","locations":"{"line":1,"column":86}]}],"account_id":6734464}
Overall my PHP code is as follows
$response = MondayHelpers::callMondayAPI(
'mutation { create_item (board_id: ' . env('MONDAY_BOARD_ID') . ', item_name: "' . $project->name . '", column_values: {"' . env('MONDAY_STATUS_ID') . '": "Active", "' . env('MONDAY_COMPANY_ID') . '": "' . $request->user()->companydetails->company . '", "' . env('MONDAY_EXPECTED_ID') . '": "' . $project->expecteddate . '"}) { id }}'
);
public static function callMondayAPI($data) {
$payload = json_encode(e'query' => $data]);
Log::info($payload);
$curl = curl_init();
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $payload);
curl_setopt($curl, CURLOPT_URL, "https://api.monday.com/v2/");
curl_setopt($curl, CURLOPT_HTTPHEADER, ,
"Authorization:" . env("MONDAY_KEY"),
"Content-Type:application/json",
]);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($curl);
curl_close($curl);
return $result;
}