{
 "kind": "discovery#restDescription",
 "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/KGIJuBPLol6TqL9arf5YOmp-wQ0\"",
 "discoveryVersion": "v1",
 "id": "iam:v1",
 "name": "iam",
 "version": "v1",
 "revision": "20160129",
 "title": "Google Identity and Access Management API",
 "description": "Manages identity and access control for Google Cloud Platform resources, including the creation of service accounts, which you can use to authenticate to Google and make API calls.",
 "ownerDomain": "google.com",
 "ownerName": "Google",
 "icons": {
  "x16": "http://www.google.com/images/icons/product/search-16.gif",
  "x32": "http://www.google.com/images/icons/product/search-32.gif"
 },
 "documentationLink": "https://cloud.google.com/iam/",
 "protocol": "rest",
 "baseUrl": "https://iam.googleapis.com/",
 "basePath": "",
 "rootUrl": "https://iam.googleapis.com/",
 "servicePath": "",
 "batchPath": "batch",
 "version_module": true,
 "parameters": {
  "access_token": {
   "type": "string",
   "description": "OAuth access token.",
   "location": "query"
  },
  "alt": {
   "type": "string",
   "description": "Data format for response.",
   "default": "json",
   "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"
  },
  "bearer_token": {
   "type": "string",
   "description": "OAuth bearer token.",
   "location": "query"
  },
  "callback": {
   "type": "string",
   "description": "JSONP",
   "location": "query"
  },
  "fields": {
   "type": "string",
   "description": "Selector specifying which fields to include in a partial response.",
   "location": "query"
  },
  "key": {
   "type": "string",
   "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"
  },
  "oauth_token": {
   "type": "string",
   "description": "OAuth 2.0 token for the current user.",
   "location": "query"
  },
  "pp": {
   "type": "boolean",
   "description": "Pretty-print response.",
   "default": "true",
   "location": "query"
  },
  "prettyPrint": {
   "type": "boolean",
   "description": "Returns response with indentations and line breaks.",
   "default": "true",
   "location": "query"
  },
  "quotaUser": {
   "type": "string",
   "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"
  },
  "upload_protocol": {
   "type": "string",
   "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
   "location": "query"
  },
  "uploadType": {
   "type": "string",
   "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
   "location": "query"
  },
  "$.xgafv": {
   "type": "string",
   "description": "V1 error format.",
   "enumDescriptions": [
    "v1 error format",
    "v2 error format"
   ],
   "location": "query"
  }
 },
 "auth": {
  "oauth2": {
   "scopes": {
    "https://www.googleapis.com/auth/cloud-platform": {
     "description": "View and manage your data across Google Cloud Platform services"
    }
   }
  }
 },
 "schemas": {
  "ListServiceAccountsResponse": {
   "id": "ListServiceAccountsResponse",
   "type": "object",
   "description": "The service account list response.",
   "properties": {
    "accounts": {
     "type": "array",
     "description": "The list of matching service accounts.",
     "items": {
      "$ref": "ServiceAccount"
     }
    },
    "nextPageToken": {
     "type": "string",
     "description": "To retrieve the next page of results, set [ListServiceAccountsRequest.page_token] to this value."
    }
   }
  },
  "ServiceAccount": {
   "id": "ServiceAccount",
   "type": "object",
   "description": "A service account in the Identity and Access Management API. To create a service account, you specify the project_id and account_id for the account. The account_id is unique within the project, and used to generate the service account email address and a stable unique id. All other methods can identify accounts using the format \"projects/{project}/serviceAccounts/{account}\". Using '-' as a wildcard for the project, will infer the project from the account. The account value can be the email address or the unique_id of the service account.",
   "properties": {
    "name": {
     "type": "string",
     "description": "The resource name of the service account in the format \"projects/{project}/serviceAccounts/{account}\". In requests using '-' as a wildcard for the project, will infer the project from the account and the account value can be the email address or the unique_id of the service account. In responses the resource name will always be in the format \"projects/{project}/serviceAccounts/{email}\"."
    },
    "projectId": {
     "type": "string",
     "description": "@OutputOnly The id of the project that owns the service account."
    },
    "uniqueId": {
     "type": "string",
     "description": "@OutputOnly unique and stable id of the service account."
    },
    "email": {
     "type": "string",
     "description": "@OutputOnly Email address of the service account."
    },
    "displayName": {
     "type": "string",
     "description": "Optional. A user-specified description of the service account. Must be fewer than 100 UTF-8 bytes."
    },
    "etag": {
     "type": "string",
     "description": "Used to perform a consistent read-modify-write.",
     "format": "byte"
    },
    "oauth2ClientId": {
     "type": "string",
     "description": "@OutputOnly. The OAuth2 client id for the service account. This is used in conjunction with the OAuth2 clientconfig API to make three legged OAuth2 (3LO) flows to access the data of Google users."
    }
   }
  },
  "CreateServiceAccountRequest": {
   "id": "CreateServiceAccountRequest",
   "type": "object",
   "description": "The service account create request.",
   "properties": {
    "accountId": {
     "type": "string",
     "description": "Required. The account id that is used to generate the service account email address and a stable unique id. It is unique within a project, must be 1-63 characters long, and match the regular expression [a-z]([-a-z0-9]*[a-z0-9]) to comply with RFC1035."
    },
    "serviceAccount": {
     "$ref": "ServiceAccount",
     "description": "The ServiceAccount resource to create. Currently, only the following values are user assignable: display_name ."
    }
   }
  },
  "Empty": {
   "id": "Empty",
   "type": "object",
   "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for `Empty` is empty JSON object `{}`."
  },
  "ListServiceAccountKeysResponse": {
   "id": "ListServiceAccountKeysResponse",
   "type": "object",
   "description": "The service account keys list response.",
   "properties": {
    "keys": {
     "type": "array",
     "description": "The public keys for the service account.",
     "items": {
      "$ref": "ServiceAccountKey"
     }
    }
   }
  },
  "ServiceAccountKey": {
   "id": "ServiceAccountKey",
   "type": "object",
   "description": "Represents a service account key. A service account can have 0 or more key pairs. The private keys for these are not stored by Google. ServiceAccountKeys are immutable.",
   "properties": {
    "name": {
     "type": "string",
     "description": "The resource name of the service account key in the format \"projects/{project}/serviceAccounts/{email}/keys/{key}\"."
    },
    "privateKeyType": {
     "type": "string",
     "description": "The type of the private key.",
     "enum": [
      "TYPE_UNSPECIFIED",
      "TYPE_PKCS12_FILE",
      "TYPE_GOOGLE_CREDENTIALS_FILE"
     ]
    },
    "privateKeyData": {
     "type": "string",
     "description": "The key data.",
     "format": "byte"
    },
    "validAfterTime": {
     "type": "string",
     "description": "The key can be used after this timestamp."
    },
    "validBeforeTime": {
     "type": "string",
     "description": "The key can be used before this timestamp."
    }
   }
  },
  "CreateServiceAccountKeyRequest": {
   "id": "CreateServiceAccountKeyRequest",
   "type": "object",
   "description": "The service account key create request.",
   "properties": {
    "privateKeyType": {
     "type": "string",
     "description": "The type of the key requested. GOOGLE_CREDENTIALS is the default key type.",
     "enum": [
      "TYPE_UNSPECIFIED",
      "TYPE_PKCS12_FILE",
      "TYPE_GOOGLE_CREDENTIALS_FILE"
     ]
    }
   }
  },
  "SignBlobRequest": {
   "id": "SignBlobRequest",
   "type": "object",
   "description": "The service account sign blob request.",
   "properties": {
    "bytesToSign": {
     "type": "string",
     "description": "The bytes to sign",
     "format": "byte"
    }
   }
  },
  "SignBlobResponse": {
   "id": "SignBlobResponse",
   "type": "object",
   "description": "The service account sign blob response.",
   "properties": {
    "keyId": {
     "type": "string",
     "description": "The id of the key used to sign the blob."
    },
    "signature": {
     "type": "string",
     "description": "The signed blob.",
     "format": "byte"
    }
   }
  },
  "Policy": {
   "id": "Policy",
   "type": "object",
   "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources. A `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM. **Example** { \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\"] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] } For a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).",
   "properties": {
    "version": {
     "type": "integer",
     "description": "Version of the `Policy`. The default version is 0.",
     "format": "int32"
    },
    "bindings": {
     "type": "array",
     "description": "Associates a list of `members` to a `role`. Multiple `bindings` must not be specified for the same `role`. `bindings` with no members will result in an error.",
     "items": {
      "$ref": "Binding"
     }
    },
    "rules": {
     "type": "array",
     "items": {
      "$ref": "Rule"
     }
    },
    "etag": {
     "type": "string",
     "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy. If no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.",
     "format": "byte"
    }
   }
  },
  "Binding": {
   "id": "Binding",
   "type": "object",
   "description": "Associates `members` with a `role`.",
   "properties": {
    "role": {
     "type": "string",
     "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. Required"
    },
    "members": {
     "type": "array",
     "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`. * `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.",
     "items": {
      "type": "string"
     }
    }
   }
  },
  "Rule": {
   "id": "Rule",
   "type": "object",
   "description": "A rule to be applied in a Policy.",
   "properties": {
    "description": {
     "type": "string",
     "description": "Human-readable description of the rule."
    },
    "permissions": {
     "type": "array",
     "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.",
     "items": {
      "type": "string"
     }
    },
    "action": {
     "type": "string",
     "description": "Required",
     "enum": [
      "NO_ACTION",
      "ALLOW",
      "ALLOW_WITH_LOG",
      "DENY",
      "DENY_WITH_LOG",
      "LOG"
     ]
    },
    "in": {
     "type": "array",
     "description": "The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries.",
     "items": {
      "type": "string"
     }
    },
    "notIn": {
     "type": "array",
     "description": "The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of entries. The format for in and not_in entries is the same as for members in a Binding (see google/iam/v1/policy.proto).",
     "items": {
      "type": "string"
     }
    },
    "conditions": {
     "type": "array",
     "description": "Additional restrictions that must be met",
     "items": {
      "$ref": "Condition"
     }
    },
    "logConfig": {
     "type": "array",
     "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.",
     "items": {
      "$ref": "LogConfig"
     }
    }
   }
  },
  "Condition": {
   "id": "Condition",
   "type": "object",
   "description": "A condition to be met.",
   "properties": {
    "iam": {
     "type": "string",
     "description": "Trusted attributes supplied by the IAM system.",
     "enum": [
      "NO_ATTR",
      "AUTHORITY",
      "ATTRIBUTION"
     ]
    },
    "sys": {
     "type": "string",
     "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.",
     "enum": [
      "NO_ATTR",
      "REGION",
      "SERVICE",
      "NAME",
      "IP"
     ]
    },
    "svc": {
     "type": "string",
     "description": "Trusted attributes discharged by the service."
    },
    "op": {
     "type": "string",
     "description": "An operator to apply the subject with.",
     "enum": [
      "NO_OP",
      "EQUALS",
      "NOT_EQUALS",
      "IN",
      "NOT_IN",
      "DISCHARGED"
     ]
    },
    "value": {
     "type": "string",
     "description": "The object of the condition. Exactly one of these must be set."
    },
    "values": {
     "type": "array",
     "description": "The objects of the condition. This is mutually exclusive with 'value'.",
     "items": {
      "type": "string"
     }
    }
   }
  },
  "LogConfig": {
   "id": "LogConfig",
   "type": "object",
   "description": "Specifies what kind of log the caller must write Increment a streamz counter with the specified metric and field names. Metric names should start with a '/', generally be lowercase-only, and end in \"_count\". Field names should not contain an initial slash. The actual exported metric names will have \"/iam/policy\" prepended. Field names correspond to IAM request parameters and field values are their respective values. At present only \"iam_principal\", corresponding to IAMContext.principal, is supported. Examples: counter { metric: \"/debug_access_count\" field: \"iam_principal\" } ==\u003e increment counter /iam/policy/backend_debug_access_count {iam_principal=[value of IAMContext.principal]} At this time we do not support: * multiple field names (though this may be supported in the future) * decrementing the counter * incrementing it by anything other than 1",
   "properties": {
    "counter": {
     "$ref": "CounterOptions",
     "description": "Counter options."
    },
    "dataAccess": {
     "$ref": "DataAccessOptions",
     "description": "Data access options."
    },
    "cloudAudit": {
     "$ref": "CloudAuditOptions",
     "description": "Cloud audit options."
    }
   }
  },
  "CounterOptions": {
   "id": "CounterOptions",
   "type": "object",
   "description": "Options for counters",
   "properties": {
    "metric": {
     "type": "string",
     "description": "The metric to update."
    },
    "field": {
     "type": "string",
     "description": "The field value to attribute."
    }
   }
  },
  "DataAccessOptions": {
   "id": "DataAccessOptions",
   "type": "object",
   "description": "Write a Data Access (Gin) log"
  },
  "CloudAuditOptions": {
   "id": "CloudAuditOptions",
   "type": "object",
   "description": "Write a Cloud Audit log"
  },
  "SetIamPolicyRequest": {
   "id": "SetIamPolicyRequest",
   "type": "object",
   "description": "Request message for `SetIamPolicy` method.",
   "properties": {
    "policy": {
     "$ref": "Policy",
     "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them."
    }
   }
  },
  "TestIamPermissionsRequest": {
   "id": "TestIamPermissionsRequest",
   "type": "object",
   "description": "Request message for `TestIamPermissions` method.",
   "properties": {
    "permissions": {
     "type": "array",
     "description": "The set of permissions to check for the `resource`. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. For more information see IAM Overview.",
     "items": {
      "type": "string"
     }
    }
   }
  },
  "TestIamPermissionsResponse": {
   "id": "TestIamPermissionsResponse",
   "type": "object",
   "description": "Response message for `TestIamPermissions` method.",
   "properties": {
    "permissions": {
     "type": "array",
     "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.",
     "items": {
      "type": "string"
     }
    }
   }
  }
 },
 "resources": {
  "projects": {
   "resources": {
    "serviceAccounts": {
     "methods": {
      "list": {
       "id": "iam.projects.serviceAccounts.list",
       "path": "v1/{+name}/serviceAccounts",
       "httpMethod": "GET",
       "description": "Lists service accounts for a project.",
       "parameters": {
        "name": {
         "type": "string",
         "description": "Required. The resource name of the project associated with the service accounts, such as \"projects/123\"",
         "required": true,
         "pattern": "^projects/[^/]*$",
         "location": "path"
        },
        "pageSize": {
         "type": "integer",
         "description": "Optional limit on the number of service accounts to include in the response. Further accounts can subsequently be obtained by including the [ListServiceAccountsResponse.next_page_token] in a subsequent request.",
         "format": "int32",
         "location": "query"
        },
        "pageToken": {
         "type": "string",
         "description": "Optional pagination token returned in an earlier [ListServiceAccountsResponse.next_page_token].",
         "location": "query"
        }
       },
       "parameterOrder": [
        "name"
       ],
       "response": {
        "$ref": "ListServiceAccountsResponse"
       },
       "scopes": [
        "https://www.googleapis.com/auth/cloud-platform"
       ]
      },
      "get": {
       "id": "iam.projects.serviceAccounts.get",
       "path": "v1/{+name}",
       "httpMethod": "GET",
       "description": "Gets a ServiceAccount",
       "parameters": {
        "name": {
         "type": "string",
         "description": "The resource name of the service account in the format \"projects/{project}/serviceAccounts/{account}\". Using '-' as a wildcard for the project, will infer the project from the account. The account value can be the email address or the unique_id of the service account.",
         "required": true,
         "pattern": "^projects/[^/]*/serviceAccounts/[^/]*$",
         "location": "path"
        }
       },
       "parameterOrder": [
        "name"
       ],
       "response": {
        "$ref": "ServiceAccount"
       },
       "scopes": [
        "https://www.googleapis.com/auth/cloud-platform"
       ]
      },
      "create": {
       "id": "iam.projects.serviceAccounts.create",
       "path": "v1/{+name}/serviceAccounts",
       "httpMethod": "POST",
       "description": "Creates a service account and returns it.",
       "parameters": {
        "name": {
         "type": "string",
         "description": "Required. The resource name of the project associated with the service accounts, such as \"projects/123\"",
         "required": true,
         "pattern": "^projects/[^/]*$",
         "location": "path"
        }
       },
       "parameterOrder": [
        "name"
       ],
       "request": {
        "$ref": "CreateServiceAccountRequest"
       },
       "response": {
        "$ref": "ServiceAccount"
       },
       "scopes": [
        "https://www.googleapis.com/auth/cloud-platform"
       ]
      },
      "update": {
       "id": "iam.projects.serviceAccounts.update",
       "path": "v1/{+name}",
       "httpMethod": "PUT",
       "description": "Updates a service account. Currently, only the following fields are updatable: 'display_name' . The 'etag' is mandatory.",
       "parameters": {
        "name": {
         "type": "string",
         "description": "The resource name of the service account in the format \"projects/{project}/serviceAccounts/{account}\". In requests using '-' as a wildcard for the project, will infer the project from the account and the account value can be the email address or the unique_id of the service account. In responses the resource name will always be in the format \"projects/{project}/serviceAccounts/{email}\".",
         "required": true,
         "pattern": "^projects/[^/]*/serviceAccounts/[^/]*$",
         "location": "path"
        }
       },
       "parameterOrder": [
        "name"
       ],
       "request": {
        "$ref": "ServiceAccount"
       },
       "response": {
        "$ref": "ServiceAccount"
       },
       "scopes": [
        "https://www.googleapis.com/auth/cloud-platform"
       ]
      },
      "delete": {
       "id": "iam.projects.serviceAccounts.delete",
       "path": "v1/{+name}",
       "httpMethod": "DELETE",
       "description": "Deletes a service acount.",
       "parameters": {
        "name": {
         "type": "string",
         "description": "The resource name of the service account in the format \"projects/{project}/serviceAccounts/{account}\". Using '-' as a wildcard for the project, will infer the project from the account. The account value can be the email address or the unique_id of the service account.",
         "required": true,
         "pattern": "^projects/[^/]*/serviceAccounts/[^/]*$",
         "location": "path"
        }
       },
       "parameterOrder": [
        "name"
       ],
       "response": {
        "$ref": "Empty"
       },
       "scopes": [
        "https://www.googleapis.com/auth/cloud-platform"
       ]
      },
      "signBlob": {
       "id": "iam.projects.serviceAccounts.signBlob",
       "path": "v1/{+name}:signBlob",
       "httpMethod": "POST",
       "description": "Signs a blob using a service account.",
       "parameters": {
        "name": {
         "type": "string",
         "description": "The resource name of the service account in the format \"projects/{project}/serviceAccounts/{account}\". Using '-' as a wildcard for the project, will infer the project from the account. The account value can be the email address or the unique_id of the service account.",
         "required": true,
         "pattern": "^projects/[^/]*/serviceAccounts/[^/]*$",
         "location": "path"
        }
       },
       "parameterOrder": [
        "name"
       ],
       "request": {
        "$ref": "SignBlobRequest"
       },
       "response": {
        "$ref": "SignBlobResponse"
       },
       "scopes": [
        "https://www.googleapis.com/auth/cloud-platform"
       ]
      },
      "getIamPolicy": {
       "id": "iam.projects.serviceAccounts.getIamPolicy",
       "path": "v1/{+resource}:getIamPolicy",
       "httpMethod": "POST",
       "description": "Returns the IAM access control policy for specified IAM resource.",
       "parameters": {
        "resource": {
         "type": "string",
         "description": "REQUIRED: The resource for which the policy is being requested. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `getIamPolicy` documentation.",
         "required": true,
         "pattern": "^projects/[^/]*/serviceAccounts/[^/]*$",
         "location": "path"
        }
       },
       "parameterOrder": [
        "resource"
       ],
       "response": {
        "$ref": "Policy"
       },
       "scopes": [
        "https://www.googleapis.com/auth/cloud-platform"
       ]
      },
      "setIamPolicy": {
       "id": "iam.projects.serviceAccounts.setIamPolicy",
       "path": "v1/{+resource}:setIamPolicy",
       "httpMethod": "POST",
       "description": "Sets the IAM access control policy for the specified IAM resource.",
       "parameters": {
        "resource": {
         "type": "string",
         "description": "REQUIRED: The resource for which the policy is being specified. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `setIamPolicy` documentation.",
         "required": true,
         "pattern": "^projects/[^/]*/serviceAccounts/[^/]*$",
         "location": "path"
        }
       },
       "parameterOrder": [
        "resource"
       ],
       "request": {
        "$ref": "SetIamPolicyRequest"
       },
       "response": {
        "$ref": "Policy"
       },
       "scopes": [
        "https://www.googleapis.com/auth/cloud-platform"
       ]
      },
      "testIamPermissions": {
       "id": "iam.projects.serviceAccounts.testIamPermissions",
       "path": "v1/{+resource}:testIamPermissions",
       "httpMethod": "POST",
       "description": "Tests the specified permissions against the IAM access control policy for the specified IAM resource.",
       "parameters": {
        "resource": {
         "type": "string",
         "description": "REQUIRED: The resource for which the policy detail is being requested. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `testIamPermissions` documentation.",
         "required": true,
         "pattern": "^projects/[^/]*/serviceAccounts/[^/]*$",
         "location": "path"
        }
       },
       "parameterOrder": [
        "resource"
       ],
       "request": {
        "$ref": "TestIamPermissionsRequest"
       },
       "response": {
        "$ref": "TestIamPermissionsResponse"
       },
       "scopes": [
        "https://www.googleapis.com/auth/cloud-platform"
       ]
      }
     },
     "resources": {
      "keys": {
       "methods": {
        "list": {
         "id": "iam.projects.serviceAccounts.keys.list",
         "path": "v1/{+name}/keys",
         "httpMethod": "GET",
         "description": "Lists service account keys",
         "parameters": {
          "name": {
           "type": "string",
           "description": "The resource name of the service account in the format \"projects/{project}/serviceAccounts/{account}\". Using '-' as a wildcard for the project, will infer the project from the account. The account value can be the email address or the unique_id of the service account.",
           "required": true,
           "pattern": "^projects/[^/]*/serviceAccounts/[^/]*$",
           "location": "path"
          },
          "keyTypes": {
           "type": "string",
           "description": "The type of keys the user wants to list. If empty, all key types are included in the response. Duplicate key types are not allowed.",
           "enum": [
            "KEY_TYPE_UNSPECIFIED",
            "USER_MANAGED",
            "SYSTEM_MANAGED"
           ],
           "repeated": true,
           "location": "query"
          }
         },
         "parameterOrder": [
          "name"
         ],
         "response": {
          "$ref": "ListServiceAccountKeysResponse"
         },
         "scopes": [
          "https://www.googleapis.com/auth/cloud-platform"
         ]
        },
        "get": {
         "id": "iam.projects.serviceAccounts.keys.get",
         "path": "v1/{+name}",
         "httpMethod": "GET",
         "description": "Gets the ServiceAccountKey by key id.",
         "parameters": {
          "name": {
           "type": "string",
           "description": "The resource name of the service account key in the format \"projects/{project}/serviceAccounts/{account}/keys/{key}\". Using '-' as a wildcard for the project will infer the project from the account. The account value can be the email address or the unique_id of the service account.",
           "required": true,
           "pattern": "^projects/[^/]*/serviceAccounts/[^/]*/keys/[^/]*$",
           "location": "path"
          }
         },
         "parameterOrder": [
          "name"
         ],
         "response": {
          "$ref": "ServiceAccountKey"
         },
         "scopes": [
          "https://www.googleapis.com/auth/cloud-platform"
         ]
        },
        "create": {
         "id": "iam.projects.serviceAccounts.keys.create",
         "path": "v1/{+name}/keys",
         "httpMethod": "POST",
         "description": "Creates a service account key and returns it.",
         "parameters": {
          "name": {
           "type": "string",
           "description": "The resource name of the service account in the format \"projects/{project}/serviceAccounts/{account}\". Using '-' as a wildcard for the project, will infer the project from the account. The account value can be the email address or the unique_id of the service account.",
           "required": true,
           "pattern": "^projects/[^/]*/serviceAccounts/[^/]*$",
           "location": "path"
          }
         },
         "parameterOrder": [
          "name"
         ],
         "request": {
          "$ref": "CreateServiceAccountKeyRequest"
         },
         "response": {
          "$ref": "ServiceAccountKey"
         },
         "scopes": [
          "https://www.googleapis.com/auth/cloud-platform"
         ]
        },
        "delete": {
         "id": "iam.projects.serviceAccounts.keys.delete",
         "path": "v1/{+name}",
         "httpMethod": "DELETE",
         "description": "Deletes a service account key.",
         "parameters": {
          "name": {
           "type": "string",
           "description": "The resource name of the service account key in the format \"projects/{project}/serviceAccounts/{account}/keys/{key}\". Using '-' as a wildcard for the project will infer the project from the account. The account value can be the email address or the unique_id of the service account.",
           "required": true,
           "pattern": "^projects/[^/]*/serviceAccounts/[^/]*/keys/[^/]*$",
           "location": "path"
          }
         },
         "parameterOrder": [
          "name"
         ],
         "response": {
          "$ref": "Empty"
         },
         "scopes": [
          "https://www.googleapis.com/auth/cloud-platform"
         ]
        }
       }
      }
     }
    }
   }
  }
 }
}
