# Keys ## List tag keys `client.ResourceTagging.Keys.List(ctx, params) (*CursorPaginationAfter[string], error)` **get** `/accounts/{account_id}/tags/keys` Lists all distinct tag keys used across resources in an account. ### Parameters - `params KeyListParams` - `AccountID param.Field[string]` Path param: Identifier. - `Cursor param.Field[string]` Query param: Cursor for pagination. ### Returns - `type KeyListResponseEnvelopeResult string` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/resource_tagging" ) func main() { client := cloudflare.NewClient( option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"), option.WithAPIEmail("user@example.com"), ) page, err := client.ResourceTagging.Keys.List(context.TODO(), resource_tagging.KeyListParams{ AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"), }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", page) } ``` #### Response ```json { "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": [ "environment", "team", "region" ], "result_info": { "count": 20, "cursor": "eyJhY2NvdW50X2lkIjoxMjM0NTY3ODkwfQ" } } ```