> ## Documentation Index
> Fetch the complete documentation index at: https://www.ayrshare.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# 账户

> 列出可用于创建活动的 Google Ads 账户，并查看 Google 无法打开哪些已关联账户及其原因。

获取可用于创建活动的 Google Ads 账户。创建活动时，请将账户的 `id` 用作 `accountId`。

<ul>
  <li>请先在 Social Accounts（社交账户）页面关联 Google Ads。</li>
  <li>您关联的 Google 用户必须能直接访问该广告账户。仅能通过经理账户访问的账户不会被列出，目前也无法使用：请将该用户添加到广告账户本身。经理账户同样不会被列出：经理账户无法包含活动。</li>
  <li>所有账户都在一个响应中返回，因此 `nextCursor` 始终为 `null`。</li>
</ul>

## 请求头参数

**Authorization** `string` *required*

[API Key](https://www.ayrshare.com/docs/apis/overview.md#authorization) of the Primary Profile.

Format: `Authorization: Bearer API_KEY`
**Profile-Key** `string`

[Profile Key](https://www.ayrshare.com/docs/apis/overview.md#profile-key-format) of a User Profile.

Format: `Profile-Key: PROFILE_KEY`

## 响应

`adAccounts` 列出您可以使用的账户，包括每个账户的 `id`、`name` 和 `currency`。

如果 Google 列出了某个账户但无法打开它，响应中还会包含 `unavailableAccounts`。每个条目包含账户 `id` 和 `reason`。当所有账户都可以使用时，该字段不会出现。

| `reason` | 含义 | 处理方法 |
| - | - | - |
| `notEnabled` | 该账户已取消、已暂停或尚未完成设置。 | 在 Google Ads 中完成设置或重新激活该账户，然后再次列出账户。更改最多可能需要约 10 分钟才会显示。 |
| `noAccess` | 您关联的 Google 用户可以看到该账户，但无权访问其数据。 | 在 Google Ads 中为该用户授予该广告账户的访问权限，然后再次列出账户。更改最多可能需要约 10 分钟才会显示。 |

```bash cURL theme={"system"}
curl \
-H "Authorization: Bearer API_KEY" \
-X GET "https://api.ayrshare.com/api/ads/google/accounts"
```

```javascript JavaScript theme={"system"}
const API_KEY = "API_KEY";

fetch("https://api.ayrshare.com/api/ads/google/accounts", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${API_KEY}`
  }
})
  .then((res) => res.json())
  .then((json) => console.log(json))
  .catch(console.error);
```

```python Python theme={"system"}
import requests

headers = {
    "Authorization": "Bearer API_KEY",
}

r = requests.get("https://api.ayrshare.com/api/ads/google/accounts", headers=headers)

print(r.json())
```

```php PHP theme={"system"}
<?php
$curl = curl_init();

curl_setopt_array($curl, [
    CURLOPT_URL => "https://api.ayrshare.com/api/ads/google/accounts",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
        "Authorization: Bearer API_KEY"
    ]
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error: " . $err;
} else {
    echo $response;
}
?>
```

```csharp C# theme={"system"}
using System;
using System.Net.Http;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        var client = new HttpClient();
        client.DefaultRequestHeaders.Add("Authorization", "Bearer API_KEY");

        var response = await client.GetAsync("https://api.ayrshare.com/api/ads/google/accounts");
        var content = await response.Content.ReadAsStringAsync();

        Console.WriteLine(content);
    }
}
```

```go Go theme={"system"}
package main

import (
    "fmt"
    "io"
    "net/http"
)

func main() {
    req, _ := http.NewRequest("GET", "https://api.ayrshare.com/api/ads/google/accounts", nil)
    req.Header.Add("Authorization", "Bearer API_KEY")

    resp, err := http.DefaultClient.Do(req)
    if err != nil {
        fmt.Println("Error:", err)
        return
    }
    defer resp.Body.Close()

    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}
```

```java Java theme={"system"}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class GetAdAccounts {
    public static void main(String[] args) throws Exception {
        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create("https://api.ayrshare.com/api/ads/google/accounts"))
            .header("Authorization", "Bearer API_KEY")
            .GET()
            .build();

        HttpResponse<String> response = HttpClient.newHttpClient()
            .send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body());
    }
}
```

```ruby Ruby theme={"system"}
require 'net/http'
require 'uri'

uri = URI.parse('https://api.ayrshare.com/api/ads/google/accounts')

request = Net::HTTP::Get.new(uri)
request['Authorization'] = 'Bearer API_KEY'

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(request)
end

puts response.body
```

```json 200: Success theme={"system"}
{
  "status": "success",
  "adAccounts": [{ "id": "1234567890", "name": "Acme", "currency": "USD" }],
  "nextCursor": null,
  "unavailableAccounts": [{ "id": "2345678901", "reason": "notEnabled" }]
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.