[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-08-11。"],[[["\u003cp\u003eThis changelog documents updates to the API Design Guide, including changes to terminology, error handling, and field requirements.\u003c/p\u003e\n"],["\u003cp\u003eRecent changes include redirecting certain design pages to Google AIPs and updating terminology to align with Google API standards.\u003c/p\u003e\n"],["\u003cp\u003eThe guide has undergone modifications to field descriptions, versioning strategies, and the inclusion of standard fields like \u003ccode\u003eread_time\u003c/code\u003e, \u003ccode\u003emime_type\u003c/code\u003e, \u003ccode\u003eexpire_time\u003c/code\u003e, \u003ccode\u003estart_time\u003c/code\u003e, and \u003ccode\u003eend_time\u003c/code\u003e over time.\u003c/p\u003e\n"],["\u003cp\u003eError handling has been improved with updates to \u003ccode\u003egoogle.rpc.ErrorInfo\u003c/code\u003e and \u003ccode\u003egoogle.api.ErrorReason\u003c/code\u003e, along with guidance on troubleshooting errors and the addition of \u003ccode\u003eErrorInfo\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eDesign patterns have been added and enhanced, with examples such as streaming half-close semantics, singleton resources, data retention, and guidance on bool vs enum vs string.\u003c/p\u003e\n"]]],[],null,["# Changelog\n\nThis Changelog highlights notable changes to the\n[API Design Guide](/apis/design).\n\n2025-06\n-------\n\n- Redirected Design page Naming Convention to Google AIP.\n\n2024-10\n-------\n\n- Redirected Design pages to Google AIPs, except for Directory Structure and Naming Conventions.\n\n2021-12\n-------\n\n- Changed terminology Networked API to Network API for consistency with https://google.aip.dev/9.\n\n2021-09\n-------\n\n- Document both Google API error format v1 and v2.\n\n2021-04\n-------\n\n- Introduced visibility-based versioning.\n\n- Introduced API title to glossary.\n\n2021-03\n-------\n\n- Added annotation for output only fields.\n\n- Update enum value guidance to always include an explicit `_UNSPECIFIED`\n value.\n\n- Add guidance on how to generate and parse resource names.\n\n- Add `progress_percent` to standard fields.\n\n2021-02\n-------\n\n- Added guidance on proto3 `optional` primitive fields.\n\n2021-01\n-------\n\n- Updated the Errors page to cover the latest improvement related to\n `google.rpc.ErrorInfo` and `google.api.ErrorReason`.\n\n- Added guidance on how to use `oauth2l`, `curl`, and System Parameters\n to troubleshoot errors with Google APIs.\n\n- Added `502` error code explanation to the Errors page. It is a network\n error instead of an API error.\n\n2020-12\n-------\n\n- Package names should use singlar component names for global consistency. Package names must not use underscores.\n\n2020-09\n-------\n\n- Cleaned up some field description requirements; changed some uses of \"must\"\n outside RFC 2119 to be RFC 2119 \"should\" directives.\n\n- Removed the `bool deleted` standard field, in favor of\n `google.protobuf.Timestamp delete_time` (which was already listed).\n\n2020-07\n-------\n\n- Updated documentation.md to match https://google.aip.dev/192#formatting.\n Markdown tables and raw HTML must not be used in proto comments.\n\n- Added `ErrorInfo` for error handling.\n\n- Added Large Payloads for design patterns.\n\n2020-04\n-------\n\n- Renamed Cloud APIs to Google Cloud APIs in glossary.\n- Introduced API and service as synonyms of API service.\n\n2020-02\n-------\n\n- Updated versioning to add two versioning strategies (channel-based and release-based), remove guidance on point versions, and change how we refer to semantic versioning.\n\n2020-01\n-------\n\n- Add data retention to design patterns.\n\n2019-11\n-------\n\n- Add terminology Cloud APIs to glossary.\n- Recommend clients to retry only for UNAVAILABLE errors.\n\n2019-06\n-------\n\n- Add \"Bool vs Enum vs String\" to design patterns.\n\n2019-03\n-------\n\n- Add system parameters to standard fields.\n\n2019-02\n-------\n\n- Add domain-scoped names to design patterns.\n\n2018-03\n-------\n\n- Add streaming half-close semantics to design patterns.\n\n2018-02\n-------\n\n- Add `read_time` to Standard Fields.\n\n2018-01\n-------\n\n- Add schema reference for API Service Definition.\n\n2017-12\n-------\n\n- Clarify API major version must be the last component of proto package name.\n\n2017-11\n-------\n\n- Clarify why the `Create` method take an input resource.\n- Clarify collection IDs that don't have plural form, such as evidence and weather.\n- Add singleton resource to design patterns.\n- Clarify C# naming conventions for acronyms and versions.\n\n2017-09\n-------\n\n- Add `mime_type` to standard fields.\n- Add `expire_time` to standard fields.\n- Add `start_time` and `end_time` to standard fields.\n\n2017-02\n-------\n\n- Add \"API endpoint\" to glossary.\n- Add `update_mask` to standard fields.\n- Add a link to `FieldMask` to standard methods.\n- Mention that OpenAPI spec does not support unsigned integers.\n- Clarify that method names should use verbs in the imperative mood."]]