Product
Jentic OSThe workplace. An in-house AI platform for every employeeJentic OneSafe access. Agents reach your systems without holding keysJentic AIRThe foundation. Gets your existing platforms ready for AI
Pricing
Developers

GET STARTED

API DirectoryBrowse 10,000+ APIs Ready For AI Agent IntegrationDocumentationGuides and API reference

TOOLS

API ScoringCheck your AI Readiness using our scorecardArazzo UIVisualize Arazzo Workflows As Interactive DocumentationArazzo EditorBuild And Edit Multi-Step API Workflows Visually

COMMUNITY

GitHubOpen source projects and examplesOpen StandardsBuilt on open specs. Never locked in.
Resources
Company
About UsOur mission and teamCareersJoin our teamContactGet in touch
Try it now
Jentic OSJentic OneJentic AIR
Pricing
API DirectoryDocumentationAPI ScoringArazzo UIArazzo EditorGitHubOpen Standards
Resources
About UsCareersContact
Try it now
JenticJentic
Products
  • Jentic OS
  • Jentic One
  • Jentic AIR
For Developers
  • API Directory
  • Documentation
  • GitHub
Company
  • About Jentic
  • Careers
  • Contact Us
  • Trust Centre
ISO/IEC 27001:2022 certification badge issued by Prescient SecurityISO/IEC 27001:2022 certification badge issued by Prescient Security

Information Security Management System

Certified to ISO/IEC 27001:2022 by Prescient Security

AICPA SOC for Service Organizations logoAICPA SOC for Service Organizations logo

SOC 2® Type 1 report

Audited by Prescient Assurance

Terms & Conditions•Privacy Policy•
© 2026 Jentic Technology Ltd. All rights reserved.
2 Grattan Court East, Dublin, D02 VX86, Ireland
Switch to light modeSwitch to dark mode
APIs / Identity Auth / Google / IAM Service Account Credentials API
IAM Service Account Credentials API logo

Google IAM Service Account Credentials API

Browse all Google APIs
35
AI ReadinessNon-Ready (F)35/100
See full scorecard
Official vendor OpenAPI document · agent-readyIdentity AuthAuthenticationoauth25 EndpointsREST

For Agents

Mint short-lived OAuth access tokens, ID tokens, signed JWTs, or signed blobs in the identity of a Google Cloud service account, without distributing private keys.

Use for: Mint a short-lived access token for a service account, Generate an ID token for service-to-service authentication, Sign a JWT as a Google Cloud service account, Sign a binary blob without exposing the service account key

Not supported: Does not create service accounts, manage IAM bindings, or rotate keys - use for minting short-lived credentials for existing service accounts only.

The IAM Service Account Credentials API mints short-lived credentials for Google Cloud service accounts. A caller with iam.serviceAccountTokenCreator on a target service account can request a 1-hour OAuth 2.0 access token, an OpenID Connect ID token, a signed JWT, or a signed binary blob, all issued in the target service account's identity. This is the standard mechanism for service-account impersonation, workload identity federation, and key-less signing on Google Cloud, replacing the practice of distributing long-lived service-account JSON keys.

Jentic One on GithubView OpenAPI Document

Install Jentic One Beta

Connect the IAM Service Account Credentials API to your agent

Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the IAM Service Account Credentials API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.

Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.

1

Step 1: Jentic One Host machine

# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fgoogleapis.com%2Fiam-credentials" | sh
2

Step 2: Agent machine

# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fgoogleapis.com%2Fiam-credentials" | sh
jentic register       # connects your agent to your Jentic One instance

Jentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.

Capabilities

What an agent can do with IAM Service Account Credentials API.

Generate a 1-hour OAuth 2.0 access token in the identity of a target service account

Mint an OpenID Connect ID token with a custom audience for service-to-service authentication

Sign a binary blob using the target service account's private key without exposing the key

Sign a JWT payload as the target service account for use with Google or third-party services

List allowed locations for a service account to support residency-aware credential issuance

Use Cases

Patterns agents use IAM Service Account Credentials API for, with concrete tasks.

★ Key-less Service Account Impersonation

Platform teams remove long-lived service-account JSON keys by giving callers iam.serviceAccountTokenCreator on a target service account and using POST :generateAccessToken to mint a 1-hour OAuth token at call time. The caller uses the token for the immediate Google API call, then discards it. This dramatically reduces the blast radius of credential leaks compared with distributing JSON keys.

Call POST /v1/projects/-/serviceAccounts/etl-runner@my-project.iam.gserviceaccount.com:generateAccessToken with a 1-hour lifetime and the cloud-platform scope, and return the resulting accessToken.

ID Token for Cloud Run-to-Cloud Run Auth

When one Cloud Run service calls another, it mints an OIDC ID token via :generateIdToken with the target service URL as audience and presents it on the outbound request. The receiving service validates the token's audience and issuer. This pattern works identically across Cloud Run, Cloud Functions, and IAP-protected backends.

Call POST /v1/projects/-/serviceAccounts/svc@p.iam.gserviceaccount.com:generateIdToken with audience https://api.example.run.app and includeEmail true, and return the idToken.

Signed JWT for Third-Party Services

Integrations that need to authenticate to a third-party service via signed JWT (e.g. AWS STS AssumeRoleWithWebIdentity, third-party APIs that accept Google service-account tokens) use :signJwt to sign a payload with the service account's private key. The API never returns the key, only the signed JWT, which is rotated automatically by Google.

Call POST /v1/projects/-/serviceAccounts/federated@p.iam.gserviceaccount.com:signJwt with a payload containing iss, sub, aud, and exp, and return the signedJwt.

AI Agent Just-in-Time Credentials

An AI agent acting on Google Cloud uses Jentic to call :generateAccessToken whenever it needs to access a downstream Google API. The agent never holds a long-lived service-account key; instead, it requests a 1-hour token in the identity of the right service account for the task. Jentic enforces who the agent is allowed to impersonate via vault scoping.

On behalf of agent role data-reader, call :generateAccessToken on bigquery-reader@p.iam.gserviceaccount.com with the bigquery.readonly scope and a 30-minute lifetime, then use that token to call BigQuery.

Key Endpoints

5 endpoints — the iam service account credentials api mints short-lived credentials for google cloud service accounts.

METHOD

PATH

DESCRIPTION

POST

/v1/{+name}:generateAccessToken

Mint a short-lived OAuth 2.0 access token in the identity of the service account

POST

/v1/{+name}:generateIdToken

Mint an OpenID Connect ID token with a custom audience

POST

/v1/{+name}:signBlob

Sign a binary blob using the service account's private key

POST

/v1/{+name}:signJwt

Sign a JWT payload as the service account

GET

/v1/{+name}/allowedLocations

List allowed locations for the service account

POST

/v1/{+name}:generateAccessToken

Mint a short-lived OAuth 2.0 access token in the identity of the service account

POST

/v1/{+name}:generateIdToken

Mint an OpenID Connect ID token with a custom audience

POST

/v1/{+name}:signBlob

Sign a binary blob using the service account's private key

POST

/v1/{+name}:signJwt

Sign a JWT payload as the service account

GET

/v1/{+name}/allowedLocations

List allowed locations for the service account

Jentic AI Readiness Score

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

I

IAM Service Account Credentials API

- Non-Ready (F)
35/100
72
Foundational Compliance
56
Developer Experience & Jentic Compatibility
13
AI-Readiness & Agent Experience
94
Agent Usability
63
Security
60
AI Discoverability
Powered by JenticScoring Framework 1.0.0 | Scoring Engine 0.4.0
Show dimension breakdown
72

Foundational Compliance

Base layer of spec validity and structural soundness.

Grade: A-Signals: 4
88%

Lint Results

Aggregated quality score from linter diagnostics, weighted by severity.

100%

Resolution Completeness

Percentage of `$ref` references that resolve successfully.

0%

Specification Validity

Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).

100%

Structural Integrity

Structural correctness score based on schema issues using logarithmic dampening.

56

Developer Experience & Jentic Compatibility

Clarity, completeness, and ingestion readiness for developers and tooling.

Grade: CSignals: 4
0%

Example Density

How richly the API is illustrated with examples.

100%

Example Validity

Percentage of examples that conform to their schemas.

25%

Response Coverage

Percentage of operations with complete response definitions (success, client error, server error).

100%

Tooling Readiness

Health of API ingestion, bundling, and resolution within Jentic pipelines.

13

AI-Readiness & Agent Experience

Semantic breadth, depth, and agent comprehension for AI systems.

Grade: FSignals: 4
54%

Description Coverage

Coverage of descriptions across API elements.

0%

Error Standardization

Coverage of RFC 9457 Problem Details for error responses.

0%

OperationId Quality

Coverage, uniqueness, and casing consistency of operationIds for AI inference.

0%

Summary Coverage

Coverage of summaries across operations/tags/info.

94

Agent Usability

Functional utility, complexity comfort, and AI orchestration readiness.

Grade: A+Signals: 1
94%

Complexity Comfort

Agent comfort level based on API operational and structural complexity.

63

Security

Trust, risk posture, and security compliance.

Grade: B-Signals: 1
62%

Authentication Strength

Average quality of security schemes based on authentication method strength (weakest link for OAuth2).

60

AI Discoverability

Findability, semantic richness, and reasoning readiness.

Grade: B-Signals: 1
60%

Descriptive Richness

Clarity and depth of descriptions across API elements.

View full reportHow the score is calculatedMore about the dimensions

Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

Score your own APIScoring CLI agent skill
npx @jentic/api-scorecard-cli score <openapi-url>

Why Jentic?

What agents get from Jentic-routed access to this vendor.

Setup

Wiring the IAM Service Account Credentials API by hand means configuring the caller's OAuth2, refreshing tokens, and building the impersonation request for each target service account yourself. Through Jentic you install once, import the IAM Service Account Credentials API from the API Directory, store the credential once, and your agent calls it.

Permission scoping

The target service account travels in the URL path (/v1/{name}:generateAccessToken), so a rule can pin your agent to one service account: it mints tokens or signatures for that account and nothing else. You choose the operations it may call, so if you allow only generateAccessToken the agent cannot signBlob or signJwt unless you add them.

Credential isolation

Your calling principal's credential is stored once, encrypted, by your own Jentic One instance and injected at execution time as a short-lived token. Neither the caller's credential nor any target service account's private key enters the agent's prompt, logs, or context.

Intent-based discovery

Agents search Jentic by intent such as 'mint service account access token' or 'sign a jwt as a service account', and Jentic returns the matching operation with its request body schema so the agent picks the right method without browsing the reference docs.

Related APIs

Alternatives and complements available in the Jentic catalogue.

Complementary

Identity and Access Management (IAM) API

→

IAM grants the iam.serviceAccountTokenCreator role that authorises calls to this API.

Use IAM to grant the role that lets the calling principal impersonate the target service account, then call IAM Credentials to mint the token.

Complementary

Cloud Identity-Aware Proxy API

→

IAP-protected services accept the OIDC ID tokens minted by this API as authentication.

Use IAM Credentials :generateIdToken to mint the ID token, then present it on the request to an IAP-protected backend.

Alternative

Cloud KMS API

→

Cloud KMS signs blobs using customer-managed keys; IAM Credentials signs as the service account's identity.

Use Cloud KMS when the signing key must be customer-managed; use IAM Credentials :signBlob/:signJwt when the signature should bind to a service-account identity.

FAQs

Specific to using IAM Service Account Credentials API through Jentic.

What authentication does the IAM Credentials API use?

Google OAuth 2.0 with the cloud-platform scope. The calling principal must hold iam.serviceAccountTokenCreator on the target service account. Through Jentic the calling credential is stored encrypted and exchanged for a scoped access token at call time.

Can I generate a token without a service-account JSON key?

Yes. POST /v1/{+name}:generateAccessToken returns a 1-hour OAuth token issued in the target service account's identity, given that the caller has iam.serviceAccountTokenCreator. This is the recommended replacement for downloaded JSON keys.

What are the rate limits for the IAM Credentials API?

Google enforces per-project quotas on credential-generation endpoints. generateAccessToken and generateIdToken default to thousands of QPS but vary by region; signJwt and signBlob have separate quotas. Exact values are visible in Cloud Console quotas for the IAM Credentials API.

How do I impersonate a service account for one API call through Jentic?

Search Jentic with 'mint service account access token', load the POST /v1/{+name}:generateAccessToken operation, and execute with name set to projects/-/serviceAccounts/{email} and a body specifying scope and lifetime. Jentic returns an access token the agent can use immediately.

What is the difference between generateAccessToken and generateIdToken?

generateAccessToken returns an OAuth 2.0 access token used as the Authorization bearer to call Google APIs. generateIdToken returns an OIDC ID token used to authenticate to receivers like Cloud Run, Cloud Functions, or IAP, where the audience claim is checked against the target service URL.

Can I limit what my agent is allowed to do with the Google IAM Credentials API?

Yes. Because you run Jentic One yourself, your own rules decide which operations and credentials the agent may use. The target service account travels in the URL path of each call, so you can pin the agent to a single account and let it mint tokens or signatures only for that one. You also choose the operations it may call, so if you allow only generateAccessToken the agent cannot reach signBlob, signJwt, or generateIdToken unless you add them.

GET STARTED

Start building with IAM Service Account Credentials API

Explore with Jentic One
View OpenAPI Document