Android Management API (androidmanagement v1): generated TS types missing googleAuthenticationOptions on EnrollmentToken and SigninDetail
Summary
The generated TypeScript types for the Android Management API (androidmanagement, version v1) are missing the googleAuthenticationOptions field and its backing schemas. These exist in the live Discovery document but not in the checked-in discovery snapshot, so the generated Schema$* interfaces are out of date.
Package / source
- Split package:
@googleapis/[email protected](currentlatest) - Also affects
googleapis(aggregate) — both are generated fromsrc/apis/androidmanagement/v1.tsin this repo.
What is missing
In src/apis/androidmanagement/v1.ts (and the published build/v1.d.ts):
Schema$EnrollmentTokenis missing the propertygoogleAuthenticationOptions?: Schema$GoogleAuthenticationOptions.Schema$SigninDetailis missing the propertygoogleAuthenticationOptions?: Schema$SigninDetailGoogleAuthenticationOptions.- The interface
Schema$GoogleAuthenticationOptionsis not generated at all (fields:authenticationRequirementenumAUTHENTICATION_REQUIREMENT_UNSPECIFIED | OPTIONAL | REQUIRED,requiredAccountEmailstring). - The interface
Schema$SigninDetailGoogleAuthenticationOptionsis not generated at all (field:authenticationRequirement, same enum).
The only existing reference is a prose mention in the Schema$GoogleAuthenticationSettings description ("This value is overridden by EnrollmentToken.googleAuthenticationOptions and SigninDetail.googleAuthenticationOptions…"); the actual typed fields/schemas are absent.
Affected endpoints
androidmanagement.enterprises.enrollmentTokens.create—requestBodyisSchema$EnrollmentToken; callers cannot setgoogleAuthenticationOptionswithout a type cast.androidmanagement.enterprises.create/androidmanagement.enterprises.patch—Schema$Enterprise.signinDetails[]isSchema$SigninDetail, which lacksgoogleAuthenticationOptions.
Evidence
Live Discovery document (revision: 20260618):
https://androidmanagement.googleapis.com/$discovery/rest?version=v1
// schemas.EnrollmentToken.properties.googleAuthenticationOptions
{ "description": "Optional. Options related to Google authentication during the enrollment.", "$ref": "GoogleAuthenticationOptions" }
// schemas.SigninDetail.properties.googleAuthenticationOptions
{ "description": "Optional. Options related to Google authentication during the enrollment.", "$ref": "SigninDetailGoogleAuthenticationOptions" }
// schemas.GoogleAuthenticationOptions
{ "id": "GoogleAuthenticationOptions", "type": "object",
"properties": {
"authenticationRequirement": { "type": "string", "enum": ["AUTHENTICATION_REQUIREMENT_UNSPECIFIED","OPTIONAL","REQUIRED"] },
"requiredAccountEmail": { "type": "string" }
} }
// schemas.SigninDetailGoogleAuthenticationOptions
{ "id": "SigninDetailGoogleAuthenticationOptions", "type": "object",
"properties": {
"authenticationRequirement": { "type": "string", "enum": ["AUTHENTICATION_REQUIREMENT_UNSPECIFIED","OPTIONAL","REQUIRED"] }
} }The checked-in discovery/androidmanagement-v1.json on main does not contain any of the above (verified: all four are absent), which is why the generated types are stale.
Root cause / suggested fix
The repo's checked-in androidmanagement v1 discovery snapshot is out of date relative to the live Discovery doc. Refreshing the discovery document and re-running the generator should produce Schema$GoogleAuthenticationOptions, Schema$SigninDetailGoogleAuthenticationOptions, and the two missing properties.
Expected vs. actual
- Expected:
Schema$EnrollmentToken.googleAuthenticationOptionsandSchema$SigninDetail.googleAuthenticationOptionsare typed, matching the live Discovery doc. - Actual: Both properties and both schema interfaces are absent; consumers must cast (
as) to send the field, even though the REST API accepts and honors it.
Source: googleapis/google-api-nodejs-client