openapi: 3.1.0 info: title: Google Cloud IAM Permissions Service Accounts API description: The Cloud IAM API enables management of identity and access control policies, service accounts, roles, and permissions for Google Cloud resources. version: 1.0.0 contact: name: Google Cloud url: https://cloud.google.com/iam servers: - url: https://iam.googleapis.com/v1 description: Google Cloud IAM Production tags: - name: Service Accounts paths: /projects/{projectId}/serviceAccounts: get: operationId: listServiceAccounts summary: Google Cloud IAM List service accounts description: Lists every service account in a project. tags: - Service Accounts parameters: - name: projectId in: path required: true schema: type: string - name: pageSize in: query schema: type: integer - name: pageToken in: query schema: type: string responses: '200': description: Successful response content: application/json: schema: type: object properties: accounts: type: array items: $ref: '#/components/schemas/ServiceAccount' nextPageToken: type: string post: operationId: createServiceAccount summary: Google Cloud IAM Create a service account description: Creates a new service account in a project. tags: - Service Accounts parameters: - name: projectId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: type: object properties: accountId: type: string serviceAccount: $ref: '#/components/schemas/ServiceAccount' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/ServiceAccount' /projects/{projectId}/serviceAccounts/{serviceAccountEmail}: get: operationId: getServiceAccount summary: Google Cloud IAM Get a service account description: Retrieves a specific service account. tags: - Service Accounts parameters: - name: projectId in: path required: true schema: type: string - name: serviceAccountEmail in: path required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/ServiceAccount' patch: operationId: patchServiceAccount summary: Google Cloud IAM Update a service account description: Updates a service account. tags: - Service Accounts parameters: - name: projectId in: path required: true schema: type: string - name: serviceAccountEmail in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ServiceAccount' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/ServiceAccount' delete: operationId: deleteServiceAccount summary: Google Cloud IAM Delete a service account description: Deletes a service account. tags: - Service Accounts parameters: - name: projectId in: path required: true schema: type: string - name: serviceAccountEmail in: path required: true schema: type: string responses: '200': description: Successful response components: schemas: ServiceAccount: type: object properties: name: type: string description: Resource name of the service account. projectId: type: string description: ID of the project that owns the service account. uniqueId: type: string description: Unique numeric ID of the service account. email: type: string format: email description: Email address of the service account. displayName: type: string description: Human-readable name for the service account. description: type: string description: Description of the service account. disabled: type: boolean description: Whether the service account is disabled. etag: type: string description: Entity tag for optimistic concurrency control. securitySchemes: oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://accounts.google.com/o/oauth2/auth tokenUrl: https://oauth2.googleapis.com/token scopes: https://www.googleapis.com/auth/iam: Manage IAM resources https://www.googleapis.com/auth/cloud-platform: Full access to Google Cloud