---
title: "Invite a client account to a manager"
method: POST
path: "/v1/ads/accounts/manager-links"
tags: ["Ad Accounts"]
---

# Invite a client account to a manager

`POST /v1/ads/accounts/manager-links`

Sends a manager-to-client link invitation from `managerCustomerId` to `clientCustomerId` (Google's CustomerClientLinkService). The manager must be one the connection's Google user reaches, directly or under another manager (see GET /v1/ads/accounts/hierarchy); the client can be any Google Ads account. The link stays `PENDING` until someone with access to the client accepts it in Google Ads or through PATCH on this path. Not idempotent: Google refuses a second invitation while one is pending. Send `validateOnly: true` to have Google check the request without sending anything.

## Request body

- object
  - `accountId` string, required — Google ads SocialAccount id.
  - `managerCustomerId` string, required — Manager customer id, digits only.
  - `clientCustomerId` string, required — Client customer id to invite, digits only.
  - `validateOnly` boolean

## Response `200`

Validated only (validateOnly true), nothing sent

- GoogleAdsManagerLink
  - `managerCustomerId` string
  - `clientCustomerId` string
  - `managerLinkId` string, nullable — Null on a validateOnly invitation, where Google creates nothing.
  - `status` 'PENDING' | 'ACTIVE' | 'REFUSED' | 'CANCELED' | 'INACTIVE' — Status the link has after this call.
  - `validateOnly` boolean

## Other responses

- `201` — Invitation sent
- `400` — Invalid request
- `401` — Unauthorized
- `404` — The account or requested resource was not found or is not accessible. An account ID may have been disconnected and removed. Read GET /v1/accounts for current account IDs.
- `409` — The account exists but is inactive or needs reconnection. Reconnect it, then read GET /v1/accounts for its current account ID before retrying. Code: ads_connection_required.
- `429` — Google Ads operations budget or quota exhausted; retry later.
- `501` — Only available on Google Ads accounts

## Changes

- **2026-09-28** `1c23a639830f` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/zernio/apis/zernio-api/changes/v1/ads/accounts/manager-links/post.md)

---

[API](https://skmtc.dev/zernio/apis/zernio-api.md) · [All operations](https://skmtc.dev/zernio/apis/zernio-api/llms.txt) · [OpenAPI document](https://skmtc.dev/zernio/apis/zernio-api/revisions/1c23a639830f?raw)
