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 [1, 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(['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;
}