{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        },
        "https://www.googleapis.com/auth/cloud_debugger": {
          "description": "Use Stackdriver Debugger"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://clouddebugger.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "Cloud Debugger",
  "description": "Examines the call stack and variables of a running application without stopping or slowing it down.\n",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/debugger",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "clouddebugger:v2",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://clouddebugger.mtls.googleapis.com/",
  "name": "clouddebugger",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "controller": {
      "resources": {
        "debuggees": {
          "methods": {
            "register": {
              "description": "Registers the debuggee with the controller service.\n\nAll agents attached to the same application must call this method with\nexactly the same request content to get back the same stable `debuggee_id`.\nAgents should call this method again whenever `google.rpc.Code.NOT_FOUND`\nis returned from any controller method.\n\nThis protocol allows the controller service to disable debuggees, recover\nfrom data loss, or change the `debuggee_id` format. Agents must handle\n`debuggee_id` value changing upon re-registration.",
              "flatPath": "v2/controller/debuggees/register",
              "httpMethod": "POST",
              "id": "clouddebugger.controller.debuggees.register",
              "parameterOrder": [],
              "parameters": {},
              "path": "v2/controller/debuggees/register",
              "request": {
                "$ref": "RegisterDebuggeeRequest"
              },
              "response": {
                "$ref": "RegisterDebuggeeResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/cloud_debugger"
              ]
            }
          },
          "resources": {
            "breakpoints": {
              "methods": {
                "list": {
                  "description": "Returns the list of all active breakpoints for the debuggee.\n\nThe breakpoint specification (`location`, `condition`, and `expressions`\nfields) is semantically immutable, although the field values may\nchange. For example, an agent may update the location line number\nto reflect the actual line where the breakpoint was set, but this\ndoesn't change the breakpoint semantics.\n\nThis means that an agent does not need to check if a breakpoint has changed\nwhen it encounters the same breakpoint on a successive call.\nMoreover, an agent should remember the breakpoints that are completed\nuntil the controller removes them from the active list to avoid\nsetting those breakpoints again.",
                  "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints",
                  "httpMethod": "GET",
                  "id": "clouddebugger.controller.debuggees.breakpoints.list",
                  "parameterOrder": [
                    "debuggeeId"
                  ],
                  "parameters": {
                    "agentId": {
                      "description": "Identifies the agent.\nThis is the ID returned in the RegisterDebuggee response.",
                      "location": "query",
                      "type": "string"
                    },
                    "debuggeeId": {
                      "description": "Required. Identifies the debuggee.",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    },
                    "successOnTimeout": {
                      "description": "If set to `true` (recommended), returns `google.rpc.Code.OK` status and\nsets the `wait_expired` response field to `true` when the server-selected\ntimeout has expired.\n\nIf set to `false` (deprecated), returns `google.rpc.Code.ABORTED` status\nwhen the server-selected timeout has expired.",
                      "location": "query",
                      "type": "boolean"
                    },
                    "waitToken": {
                      "description": "A token that, if specified, blocks the method call until the list\nof active breakpoints has changed, or a server-selected timeout has\nexpired. The value should be set from the `next_wait_token` field in\nthe last response. The initial value should be set to `\"init\"`.",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "path": "v2/controller/debuggees/{debuggeeId}/breakpoints",
                  "response": {
                    "$ref": "ListActiveBreakpointsResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform",
                    "https://www.googleapis.com/auth/cloud_debugger"
                  ]
                },
                "update": {
                  "description": "Updates the breakpoint state or mutable fields.\nThe entire Breakpoint message must be sent back to the controller service.\n\nUpdates to active breakpoint fields are only allowed if the new value\ndoes not change the breakpoint specification. Updates to the `location`,\n`condition` and `expressions` fields should not alter the breakpoint\nsemantics. These may only make changes such as canonicalizing a value\nor snapping the location to the correct line of code.",
                  "flatPath": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}",
                  "httpMethod": "PUT",
                  "id": "clouddebugger.controller.debuggees.breakpoints.update",
                  "parameterOrder": [
                    "debuggeeId",
                    "id"
                  ],
                  "parameters": {
                    "debuggeeId": {
                      "description": "Required. Identifies the debuggee being debugged.",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    },
                    "id": {
                      "description": "Breakpoint identifier, unique in the scope of the debuggee.",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v2/controller/debuggees/{debuggeeId}/breakpoints/{id}",
                  "request": {
                    "$ref": "UpdateActiveBreakpointRequest"
                  },
                  "response": {
                    "$ref": "UpdateActiveBreakpointResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform",
                    "https://www.googleapis.com/auth/cloud_debugger"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "debugger": {
      "resources": {
        "debuggees": {
          "methods": {
            "list": {
              "description": "Lists all the debuggees that the user has access to.",
              "flatPath": "v2/debugger/debuggees",
              "httpMethod": "GET",
              "id": "clouddebugger.debugger.debuggees.list",
              "parameterOrder": [],
              "parameters": {
                "clientVersion": {
                  "description": "Required. The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).",
                  "location": "query",
                  "type": "string"
                },
                "includeInactive": {
                  "description": "When set to `true`, the result includes all debuggees. Otherwise, the\nresult includes only debuggees that are active.",
                  "location": "query",
                  "type": "boolean"
                },
                "project": {
                  "description": "Required. Project number of a Google Cloud project whose debuggees to list.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v2/debugger/debuggees",
              "response": {
                "$ref": "ListDebuggeesResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/cloud_debugger"
              ]
            }
          },
          "resources": {
            "breakpoints": {
              "methods": {
                "delete": {
                  "description": "Deletes the breakpoint from the debuggee.",
                  "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}",
                  "httpMethod": "DELETE",
                  "id": "clouddebugger.debugger.debuggees.breakpoints.delete",
                  "parameterOrder": [
                    "debuggeeId",
                    "breakpointId"
                  ],
                  "parameters": {
                    "breakpointId": {
                      "description": "Required. ID of the breakpoint to delete.",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    },
                    "clientVersion": {
                      "description": "Required. The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).",
                      "location": "query",
                      "type": "string"
                    },
                    "debuggeeId": {
                      "description": "Required. ID of the debuggee whose breakpoint to delete.",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}",
                  "response": {
                    "$ref": "Empty"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform",
                    "https://www.googleapis.com/auth/cloud_debugger"
                  ]
                },
                "get": {
                  "description": "Gets breakpoint information.",
                  "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}",
                  "httpMethod": "GET",
                  "id": "clouddebugger.debugger.debuggees.breakpoints.get",
                  "parameterOrder": [
                    "debuggeeId",
                    "breakpointId"
                  ],
                  "parameters": {
                    "breakpointId": {
                      "description": "Required. ID of the breakpoint to get.",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    },
                    "clientVersion": {
                      "description": "Required. The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).",
                      "location": "query",
                      "type": "string"
                    },
                    "debuggeeId": {
                      "description": "Required. ID of the debuggee whose breakpoint to get.",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/{breakpointId}",
                  "response": {
                    "$ref": "GetBreakpointResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform",
                    "https://www.googleapis.com/auth/cloud_debugger"
                  ]
                },
                "list": {
                  "description": "Lists all breakpoints for the debuggee.",
                  "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints",
                  "httpMethod": "GET",
                  "id": "clouddebugger.debugger.debuggees.breakpoints.list",
                  "parameterOrder": [
                    "debuggeeId"
                  ],
                  "parameters": {
                    "action.value": {
                      "description": "Only breakpoints with the specified action will pass the filter.",
                      "enum": [
                        "CAPTURE",
                        "LOG"
                      ],
                      "location": "query",
                      "type": "string"
                    },
                    "clientVersion": {
                      "description": "Required. The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).",
                      "location": "query",
                      "type": "string"
                    },
                    "debuggeeId": {
                      "description": "Required. ID of the debuggee whose breakpoints to list.",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    },
                    "includeAllUsers": {
                      "description": "When set to `true`, the response includes the list of breakpoints set by\nany user. Otherwise, it includes only breakpoints set by the caller.",
                      "location": "query",
                      "type": "boolean"
                    },
                    "includeInactive": {
                      "description": "When set to `true`, the response includes active and inactive\nbreakpoints. Otherwise, it includes only active breakpoints.",
                      "location": "query",
                      "type": "boolean"
                    },
                    "stripResults": {
                      "description": "This field is deprecated. The following fields are always stripped out of\nthe result: `stack_frames`, `evaluated_expressions` and `variable_table`.",
                      "location": "query",
                      "type": "boolean"
                    },
                    "waitToken": {
                      "description": "A wait token that, if specified, blocks the call until the breakpoints\nlist has changed, or a server selected timeout has expired.  The value\nshould be set from the last response. The error code\n`google.rpc.Code.ABORTED` (RPC) is returned on wait timeout, which\nshould be called again with the same `wait_token`.",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints",
                  "response": {
                    "$ref": "ListBreakpointsResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform",
                    "https://www.googleapis.com/auth/cloud_debugger"
                  ]
                },
                "set": {
                  "description": "Sets the breakpoint to the debuggee.",
                  "flatPath": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set",
                  "httpMethod": "POST",
                  "id": "clouddebugger.debugger.debuggees.breakpoints.set",
                  "parameterOrder": [
                    "debuggeeId"
                  ],
                  "parameters": {
                    "canaryOption": {
                      "description": "The canary option set by the user upon setting breakpoint.",
                      "enum": [
                        "CANARY_OPTION_UNSPECIFIED",
                        "CANARY_OPTION_TRY_ENABLE",
                        "CANARY_OPTION_TRY_DISABLE"
                      ],
                      "location": "query",
                      "type": "string"
                    },
                    "clientVersion": {
                      "description": "Required. The client version making the call.\nSchema: `domain/type/version` (e.g., `google.com/intellij/v1`).",
                      "location": "query",
                      "type": "string"
                    },
                    "debuggeeId": {
                      "description": "Required. ID of the debuggee where the breakpoint is to be set.",
                      "location": "path",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v2/debugger/debuggees/{debuggeeId}/breakpoints/set",
                  "request": {
                    "$ref": "Breakpoint"
                  },
                  "response": {
                    "$ref": "SetBreakpointResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform",
                    "https://www.googleapis.com/auth/cloud_debugger"
                  ]
                }
              }
            }
          }
        }
      }
    }
  },
  "revision": "20200501",
  "rootUrl": "https://clouddebugger.googleapis.com/",
  "schemas": {
    "AliasContext": {
      "description": "An alias to a repo revision.",
      "id": "AliasContext",
      "properties": {
        "kind": {
          "description": "The alias kind.",
          "enum": [
            "ANY",
            "FIXED",
            "MOVABLE",
            "OTHER"
          ],
          "enumDescriptions": [
            "Do not use.",
            "Git tag",
            "Git branch",
            "OTHER is used to specify non-standard aliases, those not of the kinds\nabove. For example, if a Git repo has a ref named \"refs/foo/bar\", it\nis considered to be of kind OTHER."
          ],
          "type": "string"
        },
        "name": {
          "description": "The alias name.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Breakpoint": {
      "description": "------------------------------------------------------------------------------\n## Breakpoint (the resource)\n\nRepresents the breakpoint specification, status and results.",
      "id": "Breakpoint",
      "properties": {
        "action": {
          "description": "Action that the agent should perform when the code at the\nbreakpoint location is hit.",
          "enum": [
            "CAPTURE",
            "LOG"
          ],
          "enumDescriptions": [
            "Capture stack frame and variables and update the breakpoint.\nThe data is only captured once. After that the breakpoint is set\nin a final state.",
            "Log each breakpoint hit. The breakpoint remains active until\ndeleted or expired."
          ],
          "type": "string"
        },
        "canaryExpireTime": {
          "description": "The deadline for the breakpoint to stay in CANARY_ACTIVE state. The value\nis meaningless when the breakpoint is not in CANARY_ACTIVE state.",
          "format": "google-datetime",
          "type": "string"
        },
        "condition": {
          "description": "Condition that triggers the breakpoint.\nThe condition is a compound boolean expression composed using expressions\nin a programming language at the source location.",
          "type": "string"
        },
        "createTime": {
          "description": "Time this breakpoint was created by the server in seconds resolution.",
          "format": "google-datetime",
          "type": "string"
        },
        "evaluatedExpressions": {
          "description": "Values of evaluated expressions at breakpoint time.\nThe evaluated expressions appear in exactly the same order they\nare listed in the `expressions` field.\nThe `name` field holds the original expression text, the `value` or\n`members` field holds the result of the evaluated expression.\nIf the expression cannot be evaluated, the `status` inside the `Variable`\nwill indicate an error and contain the error text.",
          "items": {
            "$ref": "Variable"
          },
          "type": "array"
        },
        "expressions": {
          "description": "List of read-only expressions to evaluate at the breakpoint location.\nThe expressions are composed using expressions in the programming language\nat the source location. If the breakpoint action is `LOG`, the evaluated\nexpressions are included in log statements.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "finalTime": {
          "description": "Time this breakpoint was finalized as seen by the server in seconds\nresolution.",
          "format": "google-datetime",
          "type": "string"
        },
        "id": {
          "description": "Breakpoint identifier, unique in the scope of the debuggee.",
          "type": "string"
        },
        "isFinalState": {
          "description": "When true, indicates that this is a final result and the\nbreakpoint state will not change from here on.",
          "type": "boolean"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "A set of custom breakpoint properties, populated by the agent, to be\ndisplayed to the user.",
          "type": "object"
        },
        "location": {
          "$ref": "SourceLocation",
          "description": "Breakpoint source location."
        },
        "logLevel": {
          "description": "Indicates the severity of the log. Only relevant when action is `LOG`.",
          "enum": [
            "INFO",
            "WARNING",
            "ERROR"
          ],
          "enumDescriptions": [
            "Information log message.",
            "Warning log message.",
            "Error log message."
          ],
          "type": "string"
        },
        "logMessageFormat": {
          "description": "Only relevant when action is `LOG`. Defines the message to log when\nthe breakpoint hits. The message may include parameter placeholders `$0`,\n`$1`, etc. These placeholders are replaced with the evaluated value\nof the appropriate expression. Expressions not referenced in\n`log_message_format` are not logged.\n\nExample: `Message received, id = $0, count = $1` with\n`expressions` = `[ message.id, message.count ]`.",
          "type": "string"
        },
        "stackFrames": {
          "description": "The stack at breakpoint time, where stack_frames[0] represents the most\nrecently entered function.",
          "items": {
            "$ref": "StackFrame"
          },
          "type": "array"
        },
        "state": {
          "description": "The current state of the breakpoint.",
          "enum": [
            "STATE_UNSPECIFIED",
            "STATE_CANARY_PENDING_AGENTS",
            "STATE_CANARY_ACTIVE",
            "STATE_ROLLING_TO_ALL",
            "STATE_IS_FINAL"
          ],
          "enumDescriptions": [
            "Breakpoint state UNSPECIFIED.",
            "Enabling canary but no agents are available.",
            "Enabling canary and successfully assigning canary agents.",
            "Breakpoint rolling out to all agents.",
            "Breakpoint is hit/complete/failed."
          ],
          "type": "string"
        },
        "status": {
          "$ref": "StatusMessage",
          "description": "Breakpoint status.\n\nThe status includes an error flag and a human readable message.\nThis field is usually unset. The message can be either\ninformational or an error message. Regardless, clients should always\ndisplay the text message back to the user.\n\nError status indicates complete failure of the breakpoint.\n\nExample (non-final state): `Still loading symbols...`\n\nExamples (final state):\n\n*   `Invalid line number` referring to location\n*   `Field f not found in class C` referring to condition"
        },
        "userEmail": {
          "description": "E-mail address of the user that created this breakpoint",
          "type": "string"
        },
        "variableTable": {
          "description": "The `variable_table` exists to aid with computation, memory and network\ntraffic optimization.  It enables storing a variable once and reference\nit from multiple variables, including variables stored in the\n`variable_table` itself.\nFor example, the same `this` object, which may appear at many levels of\nthe stack, can have all of its data stored once in this table.  The\nstack frame variables then would hold only a reference to it.\n\nThe variable `var_table_index` field is an index into this repeated field.\nThe stored objects are nameless and get their name from the referencing\nvariable. The effective variable is a merge of the referencing variable\nand the referenced variable.",
          "items": {
            "$ref": "Variable"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "CloudRepoSourceContext": {
      "description": "A CloudRepoSourceContext denotes a particular revision in a cloud\nrepo (a repo hosted by the Google Cloud Platform).",
      "id": "CloudRepoSourceContext",
      "properties": {
        "aliasContext": {
          "$ref": "AliasContext",
          "description": "An alias, which may be a branch or tag."
        },
        "aliasName": {
          "description": "The name of an alias (branch, tag, etc.).",
          "type": "string"
        },
        "repoId": {
          "$ref": "RepoId",
          "description": "The ID of the repo."
        },
        "revisionId": {
          "description": "A revision ID.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CloudWorkspaceId": {
      "description": "A CloudWorkspaceId is a unique identifier for a cloud workspace.\nA cloud workspace is a place associated with a repo where modified files\ncan be stored before they are committed.",
      "id": "CloudWorkspaceId",
      "properties": {
        "name": {
          "description": "The unique name of the workspace within the repo.  This is the name\nchosen by the client in the Source API's CreateWorkspace method.",
          "type": "string"
        },
        "repoId": {
          "$ref": "RepoId",
          "description": "The ID of the repo containing the workspace."
        }
      },
      "type": "object"
    },
    "CloudWorkspaceSourceContext": {
      "description": "A CloudWorkspaceSourceContext denotes a workspace at a particular snapshot.",
      "id": "CloudWorkspaceSourceContext",
      "properties": {
        "snapshotId": {
          "description": "The ID of the snapshot.\nAn empty snapshot_id refers to the most recent snapshot.",
          "type": "string"
        },
        "workspaceId": {
          "$ref": "CloudWorkspaceId",
          "description": "The ID of the workspace."
        }
      },
      "type": "object"
    },
    "Debuggee": {
      "description": "Represents the debugged application. The application may include one or more\nreplicated processes executing the same code. Each of these processes is\nattached with a debugger agent, carrying out the debugging commands.\nAgents attached to the same debuggee identify themselves as such by using\nexactly the same Debuggee message value when registering.",
      "id": "Debuggee",
      "properties": {
        "agentVersion": {
          "description": "Version ID of the agent.\nSchema: `domain/language-platform/vmajor.minor` (for example\n`google.com/java-gcp/v1.1`).",
          "type": "string"
        },
        "canaryMode": {
          "description": "Used when setting breakpoint canary for this debuggee.",
          "enum": [
            "CANARY_MODE_UNSPECIFIED",
            "CANARY_MODE_ALWAYS_ENABLED",
            "CANARY_MODE_ALWAYS_DISABLED",
            "CANARY_MODE_DEFAULT_ENABLED",
            "CANARY_MODE_DEFAULT_DISABLED"
          ],
          "enumDescriptions": [
            "CANARY_MODE_UNSPECIFIED is equivalent to CANARY_MODE_ALWAYS_DISABLED so\nthat if the debuggee is not configured to use the canary feature, the\nfeature will be disabled.",
            "Always enable breakpoint canary regardless of the value of breakpoint's\ncanary option.",
            "Always disable breakpoint canary regardless of the value of breakpoint's\ncanary option.",
            "Depends on the breakpoint's canary option. Enable canary by default if\nthe breakpoint's canary option is not specified.",
            "Depends on the breakpoint's canary option. Disable canary by default if\nthe breakpoint's canary option is not specified."
          ],
          "type": "string"
        },
        "description": {
          "description": "Human readable description of the debuggee.\nIncluding a human-readable project name, environment name and version\ninformation is recommended.",
          "type": "string"
        },
        "extSourceContexts": {
          "description": "References to the locations and revisions of the source code used in the\ndeployed application.",
          "items": {
            "$ref": "ExtendedSourceContext"
          },
          "type": "array"
        },
        "id": {
          "description": "Unique identifier for the debuggee generated by the controller service.",
          "type": "string"
        },
        "isDisabled": {
          "description": "If set to `true`, indicates that the agent should disable itself and\ndetach from the debuggee.",
          "type": "boolean"
        },
        "isInactive": {
          "description": "If set to `true`, indicates that Controller service does not detect any\nactivity from the debuggee agents and the application is possibly stopped.",
          "type": "boolean"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "A set of custom debuggee properties, populated by the agent, to be\ndisplayed to the user.",
          "type": "object"
        },
        "project": {
          "description": "Project the debuggee is associated with.\nUse project number or id when registering a Google Cloud Platform project.",
          "type": "string"
        },
        "sourceContexts": {
          "description": "References to the locations and revisions of the source code used in the\ndeployed application.",
          "items": {
            "$ref": "SourceContext"
          },
          "type": "array"
        },
        "status": {
          "$ref": "StatusMessage",
          "description": "Human readable message to be displayed to the user about this debuggee.\nAbsence of this field indicates no status. The message can be either\ninformational or an error status."
        },
        "uniquifier": {
          "description": "Uniquifier to further distinguish the application.\nIt is possible that different applications might have identical values in\nthe debuggee message, thus, incorrectly identified as a single application\nby the Controller service. This field adds salt to further distinguish the\napplication. Agents should consider seeding this field with value that\nidentifies the code, binary, configuration and environment.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Empty": {
      "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n    service Foo {\n      rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n    }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
      "id": "Empty",
      "properties": {},
      "type": "object"
    },
    "ExtendedSourceContext": {
      "description": "An ExtendedSourceContext is a SourceContext combined with additional\ndetails describing the context.",
      "id": "ExtendedSourceContext",
      "properties": {
        "context": {
          "$ref": "SourceContext",
          "description": "Any source context."
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Labels with user defined metadata.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "FormatMessage": {
      "description": "Represents a message with parameters.",
      "id": "FormatMessage",
      "properties": {
        "format": {
          "description": "Format template for the message. The `format` uses placeholders `$0`,\n`$1`, etc. to reference parameters. `$$` can be used to denote the `$`\ncharacter.\n\nExamples:\n\n*   `Failed to load '$0' which helps debug $1 the first time it\n    is loaded.  Again, $0 is very important.`\n*   `Please pay $$10 to use $0 instead of $1.`",
          "type": "string"
        },
        "parameters": {
          "description": "Optional parameters to be embedded into the message.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GerritSourceContext": {
      "description": "A SourceContext referring to a Gerrit project.",
      "id": "GerritSourceContext",
      "properties": {
        "aliasContext": {
          "$ref": "AliasContext",
          "description": "An alias, which may be a branch or tag."
        },
        "aliasName": {
          "description": "The name of an alias (branch, tag, etc.).",
          "type": "string"
        },
        "gerritProject": {
          "description": "The full project name within the host. Projects may be nested, so\n\"project/subproject\" is a valid project name.\nThe \"repo name\" is hostURI/project.",
          "type": "string"
        },
        "hostUri": {
          "description": "The URI of a running Gerrit instance.",
          "type": "string"
        },
        "revisionId": {
          "description": "A revision (commit) ID.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GetBreakpointResponse": {
      "description": "Response for getting breakpoint information.",
      "id": "GetBreakpointResponse",
      "properties": {
        "breakpoint": {
          "$ref": "Breakpoint",
          "description": "Complete breakpoint state.\nThe fields `id` and `location` are guaranteed to be set."
        }
      },
      "type": "object"
    },
    "GitSourceContext": {
      "description": "A GitSourceContext denotes a particular revision in a third party Git\nrepository (e.g. GitHub).",
      "id": "GitSourceContext",
      "properties": {
        "revisionId": {
          "description": "Git commit hash.\nrequired.",
          "type": "string"
        },
        "url": {
          "description": "Git repository URL.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListActiveBreakpointsResponse": {
      "description": "Response for listing active breakpoints.",
      "id": "ListActiveBreakpointsResponse",
      "properties": {
        "breakpoints": {
          "description": "List of all active breakpoints.\nThe fields `id` and `location` are guaranteed to be set on each breakpoint.",
          "items": {
            "$ref": "Breakpoint"
          },
          "type": "array"
        },
        "nextWaitToken": {
          "description": "A token that can be used in the next method call to block until\nthe list of breakpoints changes.",
          "type": "string"
        },
        "waitExpired": {
          "description": "If set to `true`, indicates that there is no change to the\nlist of active breakpoints and the server-selected timeout has expired.\nThe `breakpoints` field would be empty and should be ignored.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "ListBreakpointsResponse": {
      "description": "Response for listing breakpoints.",
      "id": "ListBreakpointsResponse",
      "properties": {
        "breakpoints": {
          "description": "List of breakpoints matching the request.\nThe fields `id` and `location` are guaranteed to be set on each breakpoint.\nThe fields: `stack_frames`, `evaluated_expressions` and `variable_table`\nare cleared on each breakpoint regardless of its status.",
          "items": {
            "$ref": "Breakpoint"
          },
          "type": "array"
        },
        "nextWaitToken": {
          "description": "A wait token that can be used in the next call to `list` (REST) or\n`ListBreakpoints` (RPC) to block until the list of breakpoints has changes.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListDebuggeesResponse": {
      "description": "Response for listing debuggees.",
      "id": "ListDebuggeesResponse",
      "properties": {
        "debuggees": {
          "description": "List of debuggees accessible to the calling user.\nThe fields `debuggee.id` and `description` are guaranteed to be set.\nThe `description` field is a human readable field provided by agents and\ncan be displayed to users.",
          "items": {
            "$ref": "Debuggee"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ProjectRepoId": {
      "description": "Selects a repo using a Google Cloud Platform project ID\n(e.g. winged-cargo-31) and a repo name within that project.",
      "id": "ProjectRepoId",
      "properties": {
        "projectId": {
          "description": "The ID of the project.",
          "type": "string"
        },
        "repoName": {
          "description": "The name of the repo. Leave empty for the default repo.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "RegisterDebuggeeRequest": {
      "description": "Request to register a debuggee.",
      "id": "RegisterDebuggeeRequest",
      "properties": {
        "debuggee": {
          "$ref": "Debuggee",
          "description": "Required. Debuggee information to register.\nThe fields `project`, `uniquifier`, `description` and `agent_version`\nof the debuggee must be set."
        }
      },
      "type": "object"
    },
    "RegisterDebuggeeResponse": {
      "description": "Response for registering a debuggee.",
      "id": "RegisterDebuggeeResponse",
      "properties": {
        "agentId": {
          "description": "A unique ID generated for the agent.\nEach RegisterDebuggee request will generate a new agent ID.",
          "type": "string"
        },
        "debuggee": {
          "$ref": "Debuggee",
          "description": "Debuggee resource.\nThe field `id` is guaranteed to be set (in addition to the echoed fields).\nIf the field `is_disabled` is set to `true`, the agent should disable\nitself by removing all breakpoints and detaching from the application.\nIt should however continue to poll `RegisterDebuggee` until reenabled."
        }
      },
      "type": "object"
    },
    "RepoId": {
      "description": "A unique identifier for a cloud repo.",
      "id": "RepoId",
      "properties": {
        "projectRepoId": {
          "$ref": "ProjectRepoId",
          "description": "A combination of a project ID and a repo name."
        },
        "uid": {
          "description": "A server-assigned, globally unique identifier.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SetBreakpointResponse": {
      "description": "Response for setting a breakpoint.",
      "id": "SetBreakpointResponse",
      "properties": {
        "breakpoint": {
          "$ref": "Breakpoint",
          "description": "Breakpoint resource.\nThe field `id` is guaranteed to be set (in addition to the echoed fields)."
        }
      },
      "type": "object"
    },
    "SourceContext": {
      "description": "A SourceContext is a reference to a tree of files. A SourceContext together\nwith a path point to a unique revision of a single file or directory.",
      "id": "SourceContext",
      "properties": {
        "cloudRepo": {
          "$ref": "CloudRepoSourceContext",
          "description": "A SourceContext referring to a revision in a cloud repo."
        },
        "cloudWorkspace": {
          "$ref": "CloudWorkspaceSourceContext",
          "description": "A SourceContext referring to a snapshot in a cloud workspace."
        },
        "gerrit": {
          "$ref": "GerritSourceContext",
          "description": "A SourceContext referring to a Gerrit project."
        },
        "git": {
          "$ref": "GitSourceContext",
          "description": "A SourceContext referring to any third party Git repo (e.g. GitHub)."
        }
      },
      "type": "object"
    },
    "SourceLocation": {
      "description": "Represents a location in the source code.",
      "id": "SourceLocation",
      "properties": {
        "column": {
          "description": "Column within a line. The first column in a line as the value `1`.\nAgents that do not support setting breakpoints on specific columns ignore\nthis field.",
          "format": "int32",
          "type": "integer"
        },
        "line": {
          "description": "Line inside the file. The first line in the file has the value `1`.",
          "format": "int32",
          "type": "integer"
        },
        "path": {
          "description": "Path to the source file within the source context of the target binary.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "StackFrame": {
      "description": "Represents a stack frame context.",
      "id": "StackFrame",
      "properties": {
        "arguments": {
          "description": "Set of arguments passed to this function.\nNote that this might not be populated for all stack frames.",
          "items": {
            "$ref": "Variable"
          },
          "type": "array"
        },
        "function": {
          "description": "Demangled function name at the call site.",
          "type": "string"
        },
        "locals": {
          "description": "Set of local variables at the stack frame location.\nNote that this might not be populated for all stack frames.",
          "items": {
            "$ref": "Variable"
          },
          "type": "array"
        },
        "location": {
          "$ref": "SourceLocation",
          "description": "Source location of the call site."
        }
      },
      "type": "object"
    },
    "StatusMessage": {
      "description": "Represents a contextual status message.\nThe message can indicate an error or informational status, and refer to\nspecific parts of the containing object.\nFor example, the `Breakpoint.status` field can indicate an error referring\nto the `BREAKPOINT_SOURCE_LOCATION` with the message `Location not found`.",
      "id": "StatusMessage",
      "properties": {
        "description": {
          "$ref": "FormatMessage",
          "description": "Status message text."
        },
        "isError": {
          "description": "Distinguishes errors from informational messages.",
          "type": "boolean"
        },
        "refersTo": {
          "description": "Reference to which the message applies.",
          "enum": [
            "UNSPECIFIED",
            "BREAKPOINT_SOURCE_LOCATION",
            "BREAKPOINT_CONDITION",
            "BREAKPOINT_EXPRESSION",
            "BREAKPOINT_AGE",
            "BREAKPOINT_CANARY_FAILED",
            "VARIABLE_NAME",
            "VARIABLE_VALUE"
          ],
          "enumDescriptions": [
            "Status doesn't refer to any particular input.",
            "Status applies to the breakpoint and is related to its location.",
            "Status applies to the breakpoint and is related to its condition.",
            "Status applies to the breakpoint and is related to its expressions.",
            "Status applies to the breakpoint and is related to its age.",
            "Status applies to the breakpoint when the breakpoint failed to exit the\ncanary state.",
            "Status applies to the entire variable.",
            "Status applies to variable value (variable name is valid)."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "UpdateActiveBreakpointRequest": {
      "description": "Request to update an active breakpoint.",
      "id": "UpdateActiveBreakpointRequest",
      "properties": {
        "breakpoint": {
          "$ref": "Breakpoint",
          "description": "Required. Updated breakpoint information.\nThe field `id` must be set.\nThe agent must echo all Breakpoint specification fields in the update."
        }
      },
      "type": "object"
    },
    "UpdateActiveBreakpointResponse": {
      "description": "Response for updating an active breakpoint.\nThe message is defined to allow future extensions.",
      "id": "UpdateActiveBreakpointResponse",
      "properties": {},
      "type": "object"
    },
    "Variable": {
      "description": "Represents a variable or an argument possibly of a compound object type.\nNote how the following variables are represented:\n\n1) A simple variable:\n\n    int x = 5\n\n    { name: \"x\", value: \"5\", type: \"int\" }  // Captured variable\n\n2) A compound object:\n\n    struct T {\n        int m1;\n        int m2;\n    };\n    T x = { 3, 7 };\n\n    {  // Captured variable\n        name: \"x\",\n        type: \"T\",\n        members { name: \"m1\", value: \"3\", type: \"int\" },\n        members { name: \"m2\", value: \"7\", type: \"int\" }\n    }\n\n3) A pointer where the pointee was captured:\n\n    T x = { 3, 7 };\n    T* p = \u0026x;\n\n    {   // Captured variable\n        name: \"p\",\n        type: \"T*\",\n        value: \"0x00500500\",\n        members { name: \"m1\", value: \"3\", type: \"int\" },\n        members { name: \"m2\", value: \"7\", type: \"int\" }\n    }\n\n4) A pointer where the pointee was not captured:\n\n    T* p = new T;\n\n    {   // Captured variable\n        name: \"p\",\n        type: \"T*\",\n        value: \"0x00400400\"\n        status { is_error: true, description { format: \"unavailable\" } }\n    }\n\nThe status should describe the reason for the missing value,\nsuch as `\u003coptimized out\u003e`, `\u003cinaccessible\u003e`, `\u003cpointers limit reached\u003e`.\n\nNote that a null pointer should not have members.\n\n5) An unnamed value:\n\n    int* p = new int(7);\n\n    {   // Captured variable\n        name: \"p\",\n        value: \"0x00500500\",\n        type: \"int*\",\n        members { value: \"7\", type: \"int\" } }\n\n6) An unnamed pointer where the pointee was not captured:\n\n    int* p = new int(7);\n    int** pp = \u0026p;\n\n    {  // Captured variable\n        name: \"pp\",\n        value: \"0x00500500\",\n        type: \"int**\",\n        members {\n            value: \"0x00400400\",\n            type: \"int*\"\n            status {\n                is_error: true,\n                description: { format: \"unavailable\" } }\n            }\n        }\n    }\n\nTo optimize computation, memory and network traffic, variables that\nrepeat in the output multiple times can be stored once in a shared\nvariable table and be referenced using the `var_table_index` field.  The\nvariables stored in the shared table are nameless and are essentially\na partition of the complete variable. To reconstruct the complete\nvariable, merge the referencing variable with the referenced variable.\n\nWhen using the shared variable table, the following variables:\n\n    T x = { 3, 7 };\n    T* p = \u0026x;\n    T\u0026 r = x;\n\n    { name: \"x\", var_table_index: 3, type: \"T\" }  // Captured variables\n    { name: \"p\", value \"0x00500500\", type=\"T*\", var_table_index: 3 }\n    { name: \"r\", type=\"T\u0026\", var_table_index: 3 }\n\n    {  // Shared variable table entry #3:\n        members { name: \"m1\", value: \"3\", type: \"int\" },\n        members { name: \"m2\", value: \"7\", type: \"int\" }\n    }\n\nNote that the pointer address is stored with the referencing variable\nand not with the referenced variable. This allows the referenced variable\nto be shared between pointers and references.\n\nThe type field is optional. The debugger agent may or may not support it.",
      "id": "Variable",
      "properties": {
        "members": {
          "description": "Members contained or pointed to by the variable.",
          "items": {
            "$ref": "Variable"
          },
          "type": "array"
        },
        "name": {
          "description": "Name of the variable, if any.",
          "type": "string"
        },
        "status": {
          "$ref": "StatusMessage",
          "description": "Status associated with the variable. This field will usually stay\nunset. A status of a single variable only applies to that variable or\nexpression. The rest of breakpoint data still remains valid. Variables\nmight be reported in error state even when breakpoint is not in final\nstate.\n\nThe message may refer to variable name with `refers_to` set to\n`VARIABLE_NAME`. Alternatively `refers_to` will be set to `VARIABLE_VALUE`.\nIn either case variable value and members will be unset.\n\nExample of error message applied to name: `Invalid expression syntax`.\n\nExample of information message applied to value: `Not captured`.\n\nExamples of error message applied to value:\n\n*   `Malformed string`,\n*   `Field f not found in class C`\n*   `Null pointer dereference`"
        },
        "type": {
          "description": "Variable type (e.g. `MyClass`). If the variable is split with\n`var_table_index`, `type` goes next to `value`. The interpretation of\na type is agent specific. It is recommended to include the dynamic type\nrather than a static type of an object.",
          "type": "string"
        },
        "value": {
          "description": "Simple value of the variable.",
          "type": "string"
        },
        "varTableIndex": {
          "description": "Reference to a variable in the shared variable table. More than\none variable can reference the same variable in the table. The\n`var_table_index` field is an index into `variable_table` in Breakpoint.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Cloud Debugger API",
  "version": "v2",
  "version_module": true
}