Perl
Perl
Update a Task's Status to "completed"
See more Google Tasks Examples
Demonstrates how to update a Google task's status to "completed".Chilkat Perl Downloads
use chilkat();
$success = 0;
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
# Get the previously obtained access token.
# See Get Google Tasks Access Token.
$fac = chilkat::CkFileAccess->new();
$accessToken = $fac->readEntireTextFile("qa_data/tokens/googleTasks.txt","utf-8");
if ($fac->get_LastMethodSuccess() == 0) {
print $fac->lastErrorText() . "\r\n";
exit;
}
$http = chilkat::CkHttp->new();
$http->put_AuthToken($accessToken);
$taskId = "MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NzAwOTA4MDA1NzU2ODYwMzoyMDg3OTcyMDA1MTQ5NTA0";
# Create the JSON to update the task status to completed.
$json = chilkat::CkJsonObject->new();
$json->UpdateString("id",$taskId);
$json->UpdateString("status","completed");
# Specify the ID's for both the task list and the task.
$http->SetUrlVar("tasklist","MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NzAwOTA4MDA1NzU2ODYwMzow");
$http->SetUrlVar("task",$taskId);
$url = "https://www.googleapis.com/tasks/v1/lists/{$tasklist}/tasks/{$task}";
$resp = chilkat::CkHttpResponse->new();
$success = $http->HttpJson("PUT",$url,$json,"application/json",$resp);
if ($success == 0) {
print $http->lastErrorText() . "\r\n";
exit;
}
# Show the response body.
print $resp->bodyStr() . "\r\n";
# Examine the response status code.
print "response status code: " . $resp->get_StatusCode() . "\r\n";
# Sample response:
# Use this online tool to generate parsing code from sample JSON:
# Generate Parsing Code from JSON
#
# {
# "kind": "tasks#task",
# "id": "MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NzAwOTA4MDA1NzU2ODYwMzoyMDg3OTcyMDA1MTQ5NTA0",
# "etag": "\"84_7Cubo3y98GMV9bE3zQclHxhc/MTQyMDUzMzQ4MA\"",
# "title": "Get haircut",
# "updated": "2019-04-04T18:07:58.000Z",
# "selfLink": "https://www.googleapis.com/tasks/v1/lists/MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NzAwOTA4MDA1NzU2ODYwMzow/tasks/MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NzAwOTA4MDA1NzU2ODYwMzoyMDg3OTcyMDA1MTQ5NTA0",
# "position": "00000000001610612734",
# "notes": "Check in online first.",
# "status": "completed",
# "completed": "2019-04-04T18:38:56.000Z"
# }
#
# response status code: 200