awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
googleapis avatar

googleapis/google-api-go-client

0
View on GitHub↗
4,395 星标·1,182 分支·Go·bsd-3-clause·7 次浏览pkg.go.dev/google.golang.org/api↗

Google Api Go Client

The Google API Go Client Library is a collection of auto-generated Go packages designed to facilitate authenticated requests to Google services via HTTP and gRPC. It serves as an API request and response manager that converts API discovery documents into typed code to provide a consistent interface for interacting with various services.

The library includes a dedicated OAuth 2.0 authentication client used to manage token lifecycles, handle service account credentials, and perform authorization flows. It supports identity impersonation, allowing a security context to assume the identity of a target service account for specific API calls.

Broad capability areas include API request optimization through response pagination and field filtering, as well as asynchronous operation tracking for monitoring long-running tasks. The project also provides a communication interface for configuring connection pools, overriding service endpoints, and injecting custom transport layers.

Features

  • Google API Integrations - Provides auto-generated typed clients for calling Google API services with authentication and request signing.
  • Custom API Endpoints - Allows overriding default API endpoints to connect to custom or self-hosted Google service instances.
  • Application Default Credential Authentications - Uses Google Application Default Credentials or service account JSON key files to authorize API calls.
  • Credentials Object Authentications - Passes a pre-built credentials object to authenticate all API requests.
  • Service Account Authenticators - Loads a service account or refresh token JSON file to authenticate API calls.
  • API Key Authentications - Passes a simple API key string as the credential for JSON-over-HTTP API calls.
  • OAuth2 Client Management - Provides OAuth2 scope configuration to control access permissions for Google API requests.
  • OAuth2 Token Source Suppliers - Supplies an OAuth2 token source to obtain access tokens for API requests.
  • Long-Running Operation Polling - Waits for asynchronous operations to complete by checking status with configurable backoff intervals.
  • Token-Based Pagination Clients - Walks through paginated result sets by repeating requests with next-page tokens from previous responses.
  • Module Version Listers - Lists available versions of a Go module in descending order, including tagged releases and pseudo-versions.
  • Symbol Search Interfaces - Searches Go packages and symbols by query string, returning results sorted by relevance.
  • Exported Symbol Listers - Lists exported symbols from a Go package with filtering and pagination support.
  • Client Certificate Authentication - Provides a callback to obtain a TLS client certificate for mutual TLS authentication.
  • Account Impersonation - Impersonates a target service account using a chain of delegate accounts for authentication.
  • Module Detail Retrievers - Retrieves structured information about a Go module, including versions, licenses, and README content.
  • Package Detail Retrievers - Retrieves structured information about a Go package, including documentation, imports, and license details.
  • Quota Project Selectors - Enables selection of the Google Cloud project used for quota tracking on API requests.
  • Descriptive HTTP Error Responses - Extracts HTTP status codes and structured error reasons from API responses using typed error wrappers.

Star 历史

googleapis/google-api-go-client 的 Star 历史图表googleapis/google-api-go-client 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Google Api Go Client 的开源替代方案

相似的开源项目,按与 Google Api Go Client 的功能重合度排序。
  • caarlos0/envcaarlos0 的头像

    caarlos0/env

    6,004在 GitHub 上查看↗

    env is a Go library that reads environment variables and populates the fields of a Go struct according to tag directives. It uses reflection to iterate over struct types and tags at runtime, mapping environment variable names to struct fields and applying parsing behavior defined in struct tags. The library supports required field validation, returning errors when marked fields are missing or empty after parsing. It also provides default value fallback from struct tags when environment variables are not set, environment variable expansion that recursively substitutes references within values,

    Goconfigconfigurationenvironment
    在 GitHub 上查看↗6,004
  • gam-team/gamGAM-team 的头像

    GAM-team/GAM

    4,206在 GitHub 上查看↗

    GAM is a command-line tool for administering Google Workspace and Cloud Identity. It translates command-line arguments into structured API calls, enabling administrators to manage users, groups, organizational units, and domain settings across a Google Workspace environment. The tool handles authentication through OAuth2 flows, service accounts, and workload identity federation, and supports multi-tenant configurations for managing multiple domains or cloud projects from a single installation. GAM distinguishes itself through its batch processing and automation capabilities. It can process la

    Pythongamgooglegoogle-admin-sdk
    在 GitHub 上查看↗4,206
  • google/google-api-go-clientgoogle 的头像

    google/google-api-go-client

    4,448在 GitHub 上查看↗

    This project is a collection of Go packages and a programmatic interface for interacting with Google services and Google Cloud resources via REST APIs. It functions as a client library and SDK that transforms raw HTTP requests into structured Go function calls. The library utilizes discovery-based client generation to create type-safe clients from API discovery documents. It separates the acquisition of authorization tokens from the request logic through a token-source based authentication model. The project covers identity management and authentication via OAuth 2.0, service accounts, and A

    Go
    在 GitHub 上查看↗4,448
  • steipete/gogclisteipete 的头像

    steipete/gogcli

    4,232在 GitHub 上查看↗

    gogcli is a single command-line binary that manages Gmail, Drive, Calendar, Docs, Sheets, Slides, Forms, Apps Script, Contacts, People, Tasks, Classroom, Chat, Groups, Keep, and Workspace Admin services through a predictable service resource method grammar. It authenticates across multiple Google accounts using OAuth, service accounts, access tokens, or application default credentials, storing credentials in the OS keyring for secure persistence. The tool also exposes a Model Context Protocol server over stdio that registers typed tools for agent clients, and can invoke any Google Discovery-

    Gogcalgcontactsgdrive
    在 GitHub 上查看↗4,232
查看 Google Api Go Client 的所有 30 个替代方案→

常见问题解答

googleapis/google-api-go-client 是做什么的?

The Google API Go Client Library is a collection of auto-generated Go packages designed to facilitate authenticated requests to Google services via HTTP and gRPC. It serves as an API request and response manager that converts API discovery documents into typed code to provide a consistent interface for interacting with various services.

googleapis/google-api-go-client 的主要功能有哪些?

googleapis/google-api-go-client 的主要功能包括:Google API Integrations, Custom API Endpoints, Application Default Credential Authentications, Credentials Object Authentications, Service Account Authenticators, API Key Authentications, OAuth2 Client Management, OAuth2 Token Source Suppliers。

googleapis/google-api-go-client 有哪些开源替代品?

googleapis/google-api-go-client 的开源替代品包括: caarlos0/env — env is a Go library that reads environment variables and populates the fields of a Go struct according to tag… gam-team/gam — GAM is a command-line tool for administering Google Workspace and Cloud Identity. It translates command-line arguments… google/google-api-go-client — This project is a collection of Go packages and a programmatic interface for interacting with Google services and… steipete/gogcli — gogcli is a single command-line binary that manages Gmail, Drive, Calendar, Docs, Sheets, Slides, Forms, Apps Script,… googleapis/google-api-python-client — This project is a REST API client library and Google Cloud SDK component that integrates Python applications with… googleapis/google-cloud-go — The Google Cloud Go Client Library is a set of Go packages and a software development kit used to interact with Google…