googleapis / googleapis/google-cloud-go

admanager: publish Go client library for the Ad Manager API

Open
#20,083 2 comments 0 reactions 1 assignee Claimed by @christopherseeley View on GitHub
api: admanager
Dominant language
Go
Stars
4.5k
Forks
1.6k
Avg merge
1d 13h
Merged PRs (30d)
109

Description

## Is your feature request related to a problem? Please describe.

There is currently no published Go client for the Google Ad Manager REST API (`admanager.googleapis.com`, v1), despite generation scaffolding already existing upstream. The proto source in `googleapis/googleapis` under `google/ads/admanager/v1/` includes a `go_gapic_library` Bazel rule (`release_level = "beta"`, `transport = "rest"`), but its `importpath` is still a placeholder (`google.golang.org/google/ads/admanager/v1;admanager`), so nothing has been generated or released.

As a result, none of the usual entry points exist:
- `cloud.google.com/go/ads/admanager` — 404 on the module proxy; no `ads` directory in `google-cloud-go`.
- `google.golang.org/api/admanager/v1` — 404; no `admanager` directory in `google-api-go-client`.
- `google.golang.org/genproto/googleapis/ads/admanager/v1` — 404.

The Ad Manager REST API has been in Open Beta since September 24, 2024, with write support (create/patch) for AdUnit, Placement, and CustomTargetingKey added December 4, 2025. Go developers targeting it today have no supported client and must hand-roll one.

## Describe the solution you'd like

Either of the following would resolve the gap:

(a) Wire up the existing `go_gapic_library` rule with a real `importpath` and run it through the standard generation/release pipeline into `cloud.google.com/go/ads/admanager`, the way other GAPIC clients are onboarded into `google-cloud-go`; or

(b) Alternatively, publish a discovery-based client at `google.golang.org/api/admanager/v1`.

Either is acceptable.

## Describe alternatives you've considered

For our provider we hand-rolled a minimal REST client in Go directly against the discovery document, implementing OAuth, rate limiting, and retries ourselves. This is ongoing maintenance that Go consumers of other Google APIs typically don't carry, and it must track API changes manually. The motivating use case is our open source Terraform/OpenTofu provider for Ad Manager: github.com/VictorCano/terraform-provider-admanager.

## Additional context

- Discovery document: `https://admanager.googleapis.com/$discovery/rest?version=v1` (checked revision 2026-07-01)
- Proto source: https://github.com/googleapis/googleapis/tree/master/google/ads/admanager/v1
- BUILD.bazel (existing `go_gapic_library` rule): https://github.com/googleapis/googleapis/blob/master/google/ads/admanager/v1/BUILD.bazel

We searched both the `google-cloud-go` and `google-api-go-client` issue trackers and found no existing open or closed request for this client.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.