Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Android Management API (androidmanagement v1): generated TS types missing googleAuthenticationOptions on EnrollmentToken and SigninDetail

Đang mở
#3,927 0 bình luận 1 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
76/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
typescript
Lĩnh vực
api

Hướng nghiên cứu

Bắt đầu với discovery/androidmanagement-v1.json và so sánh nó với tài liệu Discovery hiện tại của Android Management API v1, sau đó kiểm tra src/apis/androidmanagement/v1.ts và tệp build/v1.d.ts được tạo. Làm mới snapshot Discovery và chạy lại generator; hoàn tất khi cả các schema còn thiếu lẫn hai thuộc tính của googleAuthenticationOptions đều xuất hiện trong các kiểu được tạo.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

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] (current latest)
  • Also affects googleapis (aggregate) — both are generated from src/apis/androidmanagement/v1.ts in this repo.

What is missing

In src/apis/androidmanagement/v1.ts (and the published build/v1.d.ts):

  1. Schema$EnrollmentToken is missing the property googleAuthenticationOptions?: Schema$GoogleAuthenticationOptions.
  2. Schema$SigninDetail is missing the property googleAuthenticationOptions?: Schema$SigninDetailGoogleAuthenticationOptions.
  3. The interface Schema$GoogleAuthenticationOptions is not generated at all (fields: authenticationRequirement enum AUTHENTICATION_REQUIREMENT_UNSPECIFIED | OPTIONAL | REQUIRED, requiredAccountEmail string).
  4. The interface Schema$SigninDetailGoogleAuthenticationOptions is 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 — requestBody is Schema$EnrollmentToken; callers cannot set googleAuthenticationOptions without a type cast.
  • androidmanagement.enterprises.create / androidmanagement.enterprises.patch — Schema$Enterprise.signinDetails[] is Schema$SigninDetail, which lacks googleAuthenticationOptions.

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.googleAuthenticationOptions and Schema$SigninDetail.googleAuthenticationOptions are 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.
Ngôn ngữ chính
TypeScript
Star
12.3k
Fork
2k
Merge trung bình
1 ngày 19 giờ
Pull request đã merge (30 ngày)
21

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của googleapis/google-api-nodejs-client

Tất cả issue của googleapis/google-api-nodejs-client

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.