{
  "protocol": "track",
  "imports": [
    {
      "path": "common.avdl",
      "type": "idl"
    },
    {
      "path": "identify_common.avdl",
      "type": "idl"
    }
  ],
  "types": [],
  "messages": {
    "track": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        },
        {
          "name": "userAssertion",
          "type": "string"
        },
        {
          "name": "options",
          "type": "TrackOptions"
        },
        {
          "name": "forceRemoteCheck",
          "type": "boolean"
        }
      ],
      "response": null,
      "doc": "This will perform identify and track.\n    If forceRemoteCheck is true, we force all remote proofs to be checked\n    (otherwise a cache is used)."
    },
    "trackWithToken": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        },
        {
          "name": "trackToken",
          "type": "TrackToken"
        },
        {
          "name": "options",
          "type": "TrackOptions"
        }
      ],
      "response": null,
      "doc": "Track with token returned from identify."
    },
    "dismissWithToken": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        },
        {
          "name": "trackToken",
          "type": "TrackToken"
        }
      ],
      "response": null,
      "doc": "Called by the UI when the user decides *not* to track, to e.g. dismiss gregor items."
    },
    "untrack": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        },
        {
          "name": "username",
          "type": "string"
        }
      ],
      "response": null
    },
    "checkTracking": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        }
      ],
      "response": null
    },
    "fakeTrackingChanged": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        },
        {
          "name": "username",
          "type": "string"
        },
        {
          "name": "isTracking",
          "type": "boolean"
        }
      ],
      "response": null
    }
  },
  "namespace": "keybase.1"
}