30 open-source projects similar to google/google-api-go-client, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Google Api Go Client alternative.
This project is a REST API client library and Google Cloud SDK component that integrates Python applications with Google services. It functions as a discovery-based API client, utilizing an OAuth 2.0 integration library to secure requests and verify identity through access tokens and service accounts. The library is distinguished by its use of discovery documents to dynamically generate clients at runtime. By parsing JSON metadata, it maps Python method calls to HTTP requests and builds interface-based resource models that mirror the hierarchical structure of the remote service. Its broader
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 t
Octokit.js is a GitHub API SDK used to interact with GitHub via REST and GraphQL interfaces. It serves as a client for executing typed queries and mutations, managing authenticated REST requests, and handling signed webhooks across Node.js, Deno, and browser environments. The library features a plugin-based request pipeline and an adapter-based HTTP client, allowing the interception of requests and responses across different runtimes. It employs strategy-based authentication to separate credential management from request logic, supporting static tokens, OAuth flows, and GitHub App installatio
The Google API PHP Client Library is a development kit for interacting with Google Cloud services and APIs. It provides standardized service interfaces to retrieve and manipulate data, serving as a comprehensive SDK for executing network requests across Google cloud platforms. The library features a specialized authentication handler for OAuth 2.0, managing authorization flows, access tokens, and offline access via refresh tokens. It includes a service account authenticator that uses JSON key files or application default credentials for server-to-server communication, as well as mechanisms fo
The Google API Node.js client is a development kit designed for integrating Google Cloud services into server-side JavaScript applications. It provides generated interfaces that map application calls to remote service endpoints, enabling developers to execute requests and interact with cloud resources through a unified library. The library distinguishes itself through a modular architecture that allows developers to install specific service submodules individually, which optimizes application bundle sizes and improves startup performance. It also features automated OAuth2 token lifecycle mana
openapi-ts is a tool and orchestrator used to convert OpenAPI specifications into type-safe TypeScript SDKs and HTTP client implementations. It automatically generates typed interfaces and request functions from API definitions to ensure consistency between the server and the client. The project employs a transport-agnostic client interface, decoupling high-level API calls from the underlying network library. It uses a plugin-based generation pipeline and a custom plugin architecture to allow for the customization of output types and validation schemas. The system provides capabilities for n
This project is a Node.js client and database driver for Elasticsearch. It acts as a REST API wrapper that translates JavaScript method calls into HTTP requests to index, search, and manage documents within a distributed search and analytics engine. The library provides a programmatic interface for cluster management and data integration. It includes tools for discovering cluster nodes and managing indices to maintain connection stability and organize data storage. The client covers a broad range of operations, including document lifecycle management for CRUD actions, search query execution,
hello.js is a JavaScript REST API client and social media API wrapper designed for authenticating users and aggregating data across multiple social network providers. It provides a unified interface to standardize requests and response formats, allowing for consistent data retrieval from diverse external services. The project implements a secure OAuth2 handshake process that utilizes a proxy-based credential masking system to hide private API keys from the client side. It includes a token manager that handles the full authentication lifecycle, including scope-based permission mapping and an a
Discordgo is a Go library for building Discord bots and integrations, providing a complete client for both the Discord REST API and the real-time Gateway WebSocket protocol. It serves as a foundational package for developers who need to connect authenticated clients to Discord servers, send messages, handle events, and manage real-time communication programmatically. The library distinguishes itself through a comprehensive set of architectural components designed for production bot development. It includes a command routing middleware system that parses incoming messages and dispatches them t
The Google API JavaScript Client Library is an official client for calling Google APIs directly from browser applications. It provides a programmatic interface to exchange data and execute service requests while managing request construction and response parsing. The library features dynamic client discovery, which loads machine-readable metadata at runtime to automatically generate request methods and parameter validation for various endpoints. It also includes an authentication client that handles OAuth 2.0 authorization flows to securely manage user identity and access tokens in the browse
This project is a discovery-based API client and a Python library for interacting with Google services. It enables Python applications to make authenticated requests to Google Cloud and Workspace APIs. The library functions by consuming machine-readable metadata descriptions of remote web services to build functional client interfaces at runtime. This allows for dynamic API consumption by generating interfaces from metadata rather than using manual endpoint mapping. The project covers a range of integration capabilities, including cloud service automation and development for Google Workspace
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
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-
The Google Cloud Go Client Library is a set of Go packages and a software development kit used to interact with Google Cloud platform services and APIs. It provides the primary means for Go applications to integrate with cloud service endpoints through simplified language patterns and automated API request handling. The project features specialized libraries for managing identity and access via service accounts, API keys, and environment-based credential resolution. It includes dedicated SDKs for programmatic resource orchestration and the deployment and management of serverless functions, co
gcalcli is a command-line interface and calendar management tool designed for viewing, creating, and managing events within Google Calendar. It functions as a Google API client that allows users to handle scheduling and appointments directly from a terminal without the use of a web browser. The tool enables terminal-based scheduling and calendar workflow automation, providing a way to manage daily agendas and schedule updates through a shell. The utility integrates with the Google Calendar API via a REST client and uses OAuth2 for authentication. It renders API data into human-readable table
This project is a boilerplate for building RESTful web services using Node.js, Express, and Mongoose. It provides a structured foundation for developing backend applications, incorporating schema-driven data modeling to manage database interactions and a middleware-based pipeline to handle request processing and validation. The framework distinguishes itself by integrating token-based stateless authentication to secure API endpoints and manage user identity. It includes built-in support for containerization, allowing the application to be packaged into portable images for consistent deploymen
InvenTree is an open-source inventory management platform built on Django, designed for tracking parts, stock levels, and supply chain operations through a web interface and REST API. The system uses barcodes—including QR codes, 1D barcodes, and Data Matrix codes—as primary identifiers for scanning, linking, and triggering inventory actions, and extends core functionality through a Python plugin framework supporting custom actions, UI panels, barcode handlers, and scheduled tasks. The platform distinguishes itself through a comprehensive plugin-based extensibility system that allows custom in
This project is a set of Python client libraries and API wrappers used to interact with Google Cloud Platform services. It functions as a programmatic interface for provisioning, configuring, and managing cloud infrastructure and resources. The library provides a specialized toolkit for Google Cloud Storage, enabling the uploading, downloading, and management of data objects within cloud buckets. It also supports the development of serverless applications and the automation of environment setup and scaling. The project handles cloud API integration by providing high-level abstractions that m
Authlib is a comprehensive Python framework for implementing OAuth 1.0, OAuth 2.0, and OpenID Connect clients and servers. It provides a complete toolkit for identity management, spanning the development of authorization servers, resource servers, and client-side integrations. The library distinguishes itself through a full implementation of the JOSE specifications, including JSON Web Tokens, Encryption, Signatures, and Keys. It features specialized capabilities for non-interactive authentication via service account assertion frameworks and a compliance-correction layer designed to handle ide
This project is a JavaScript client library and SDK for interacting with the Notion REST API. It provides typed methods and utilities to programmatically manage pages, databases, and workspace resources within a Notion environment. The SDK includes tools for implementing OAuth 2.0 authorization flows to grant third-party application access to workspace content. It features mechanisms for handling cursor-based pagination via asynchronous iterators and implements exponential back-off retries to manage rate limits and transient server errors. The library covers a broad range of capabilities, in
Authlib is a comprehensive Python library for building and integrating OAuth 1.0, OAuth 2.0, and OpenID Connect clients and servers. It provides a unified set of tools to manage authentication and authorization flows, allowing applications to either act as a client connecting to external identity providers or as a provider issuing tokens and managing user identities. The project distinguishes itself through a full implementation of the JOSE standards, offering a suite of cryptographic tools for generating, signing, encrypting, and validating JSON Web Tokens, Signatures, Encryption, and Keys.
clasp is a command-line interface for managing Google Apps Script projects, enabling developers to create, sync, and deploy scripts from a local development environment. It provides an alternative to the cloud-based script editor, allowing version control, offline editing, and integration with standard development workflows. The tool supports TypeScript transpilation, so developers can write type-annotated code that compiles to JavaScript for the Apps Script runtime. Authentication is handled via OAuth 2.0, and users can synchronize local files with remote projects using ignore patterns simil
PRAW is a Python wrapper for the Reddit API, functioning as a REST API client and social media data crawler. It provides a programmatic interface to fetch data, manage account content, and interact with the platform. The library implements a comprehensive OAuth 2.0 client supporting multiple authorization flows, including password, implicit, and refresh tokens, as well as read-only guest access. It distinguishes itself through a rate-limit-aware request scheduler that tracks server-side throttling to prevent API quota exhaustion and employs lazy-loading resource objects to fetch data only whe
NSwag is an OpenAPI toolchain for .NET that provides a suite of generators for converting OpenAPI specifications and JSON schemas into clients, server stubs, and structured documentation. It enables the creation of type-safe client libraries and data transfer objects, as well as the generation of OpenAPI specifications by analyzing .NET controllers. The project supports contract-first API development by generating server controller stubs from specifications and offers dedicated TypeScript API integration to ensure type safety in frontend applications. It also provides tools for hosting intera
Octokit is a JavaScript API client and REST API wrapper designed for executing authenticated requests to GitHub from browser-based environments. It serves as a programmatic interface for managing repositories, issues, pull requests, and user profiles. The library provides a high-level wrapper that organizes API functionality into resource-specific namespaces. It implements an asynchronous promise interface and includes mechanisms for pagination-aware data fetching and rate-limit tracking to prevent service interruptions. The tool covers a broad range of administrative capabilities, including
Express Gateway is a centralized API gateway built on the Express.js framework, designed to serve as a single entry point for microservices architectures. It manages incoming network traffic by routing requests to backend services based on defined path-based rules while enforcing security policies and authentication protocols at the edge. The system distinguishes itself through a configuration-driven approach that utilizes a centralized definition file to dictate routing logic and policy application. It features a hot-reloading engine that allows for real-time updates to routing rules and sec
Codeception is a full-stack testing framework for PHP applications that provides a unified interface for unit, functional, and acceptance testing. It serves as a tool for automating real desktop and mobile browsers via the WebDriver protocol and acts as a client for testing REST and SOAP APIs. The framework is distinguished by its support for Behavior-Driven Development, allowing users to write human-readable test specifications in Gherkin language to align technical tests with business requirements. It implements actor-based action mapping to connect these natural language steps to executabl
This project is a Ruby wrapper for the Twitter API, providing a programmatic interface to interact with the platform's REST and streaming endpoints. It serves as an API client for managing social content, users, and account activity. The library includes specialized tools for real-time data streaming, allowing the acquisition of live public posts, account events, and user activity. It differentiates itself with advanced media handling, such as chunked uploading for large files, and integrated traffic management to monitor rate limits and detect streaming stalls. Broadly, the project covers c
This project is a comprehensive Python network request framework designed for both synchronous and asynchronous HTTP communication. It provides a high-performance client capable of executing non-blocking requests within event-driven applications, while also supporting standard blocking calls for simpler scripts. The library is built to operate natively across diverse asynchronous runtimes, automatically detecting and utilizing the underlying event loop for concurrency. What distinguishes this library is its modular architecture, which decouples request construction from network execution thro
This project is an API gateway and ingress controller designed to manage traffic, security, and service connectivity within Kubernetes environments. It operates as a controller that monitors cluster state to reconcile gateway configurations with desired infrastructure definitions, ensuring that network policies and routing rules remain consistent across distributed deployments. The system distinguishes itself through a modular request pipeline that allows for the injection of custom logic to handle transformations, security checks, and logging. It supports declarative infrastructure managemen