---
title: List OAuth Scopes
---

[Skip to content](#%5Ftop) 

[API Reference](https://developers.cloudflare.com/api/go)

[IAM](https://developers.cloudflare.com/api/go/resources/iam)

[OAuth Scopes](https://developers.cloudflare.com/api/go/resources/iam/subresources/oauth%5Fscopes)

Copy Markdown

Open in **Claude**

Open in **ChatGPT**

Open in **Cursor**

---

**Copy Markdown**

**View as Markdown**

# List OAuth Scopes

client.IAM.OAuthScopes.List(ctx) (\*SinglePage\[[OAuthScopeListResponse](https://developers.cloudflare.com/api/go/resources/iam#%28resource%29%20iam.oauth%5Fscopes%20%3E%20%28model%29%20OAuthScopeListResponse%20%3E%20%28schema%29)\], error)

GET/oauth/scopes

List all available OAuth scopes. This endpoint requires authentication but has no authorization role requirements.

##### Security

API Token

The preferred authorization scheme for interacting with the Cloudflare API. [Create a token](https://developers.cloudflare.com/fundamentals/api/get-started/create-token/).

**Example:**`Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY`

API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

**Example:**`X-Auth-Email: user@example.com`

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

**Example:**`X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194`

##### ReturnsExpand Collapse 

type OAuthScopeListResponse struct{…}

An available OAuth scope that can be assigned to an OAuth client.

ID string

The scope label to use in the scopes array when creating or updating an OAuth client.

Name string

Human-readable name of the OAuth scope.

Category stringOptional

Category for grouping scopes in the UI.

Scopes \[\]stringOptional

The underlying resource scopes (Bach scopes) that define which resources this OAuth scope can act upon.

### List OAuth Scopes

Go

HTTPHTTP

TypeScriptTypeScript

PythonPython

GoGo

TerraformTerraform

```
package main

import (
  "context"
  "fmt"

  "github.com/cloudflare/cloudflare-go"
  "github.com/cloudflare/cloudflare-go/option"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  page, err := client.IAM.OAuthScopes.List(context.TODO())
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", page)
}

```

200 example

```
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": [
    {
      "id": "account.read",
      "name": "Account Read",
      "category": "account_and_billing",
      "scopes": [
        "com.cloudflare.api.account"
      ]
    }
  ],
  "result_info": {
    "count": 1,
    "page": 1,
    "per_page": 20,
    "total_count": 2000
  }
}
```

##### Returns Examples

200 example

```
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": [
    {
      "id": "account.read",
      "name": "Account Read",
      "category": "account_and_billing",
      "scopes": [
        "com.cloudflare.api.account"
      ]
    }
  ],
  "result_info": {
    "count": 1,
    "page": 1,
    "per_page": 20,
    "total_count": 2000
  }
}
```