Sample code for 30+ languages & platforms
Dart

Get Task Lists

See more Google Tasks Examples

Demonstrates how to download the Google task lists.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  // 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.

  final fac = CkFileAccess();
  final String accessToken;
  try {
    accessToken = fac.readEntireTextFile('qa_data/tokens/googleTasks.txt', 'utf-8');
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  final http = CkHttp();

  http.authToken = accessToken;

  final resp = CkHttpResponse();
  try {
    http.httpNoBody('GET', 'https://www.googleapis.com/tasks/v1/users/@me/lists', resp);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Show the response body.
  print(resp.bodyStr);

  // Examine the response status code.
  print('response status code: ${resp.statusCode}');

  // Use this online tool to generate parsing code from sample JSON: 
  // Generate Parsing Code from JSON

  var kind = '';
  var i = 0;
  var id = '';
  var title = '';
  var updated = '';
  var selfLink = '';

  final json = CkJsonObject();
  json.load(resp.bodyStr);

  kind = json.stringOf('kind');
  final etag = json.stringOf('etag');
  i = 0;
  final countI = json.sizeOfArray('items');
  while (i < countI) {
    json.i = i;
    kind = json.stringOf('items[i].kind');
    id = json.stringOf('items[i].id');
    title = json.stringOf('items[i].title');
    updated = json.stringOf('items[i].updated');
    selfLink = json.stringOf('items[i].selfLink');
    i++;
  }

  // Sample response:

  // {
  //  "kind": "tasks#taskLists",
  //  "etag": "\"84_7Cubo3y98GMV9bE3zQclHxhc/cv_AS-HUP96xJ9bgP8Y2B8WGSpM\"",
  //  "items": [
  //   {
  //    "kind": "tasks#taskList",
  //    "id": "MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6MDow",
  //    "title": "My Tasks",
  //    "updated": "2019-04-04T17:42:52.000Z",
  //    "selfLink": "https://www.googleapis.com/tasks/v1/users/@me/lists/MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6MDow"
  //   },
  //   {
  //    "kind": "tasks#taskList",
  //    "id": "MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6MzE3OTUxODY4OTU1MTEwMDow",
  //    "title": "ccc",
  //    "updated": "2019-04-04T17:15:19.000Z",
  //    "selfLink": "https://www.googleapis.com/tasks/v1/users/@me/lists/MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6MzE3OTUxODY4OTU1MTEwMDow"
  //   },
  //   {
  //    "kind": "tasks#taskList",
  //    "id": "MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NDQ0NTA4MDYyNTY3OTEzMzow",
  //    "title": "bbb",
  //    "updated": "2019-04-04T17:15:02.000Z",
  //    "selfLink": "https://www.googleapis.com/tasks/v1/users/@me/lists/MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NDQ0NTA4MDYyNTY3OTEzMzow"
  //   },
  //   {
  //    "kind": "tasks#taskList",
  //    "id": "MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NzAwOTA4MDA1NzU2ODYwMzow",
  //    "title": "aaa",
  //    "updated": "2019-04-04T17:13:17.000Z",
  //    "selfLink": "https://www.googleapis.com/tasks/v1/users/@me/lists/MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NzAwOTA4MDA1NzU2ODYwMzow"
  //   }
  //  ]
  // }
  // 
  // response status code: 200
}