Create a new access token.
Security
API Token
The preferred authorization scheme for interacting with the Cloudflare API. Create a token.
Example:
Accepted Permissions (at least one required)
Create Token
package main
import (
"context"
"fmt"
"github.com/cloudflare/cloudflare-go"
"github.com/cloudflare/cloudflare-go/option"
"github.com/cloudflare/cloudflare-go/shared"
"github.com/cloudflare/cloudflare-go/user"
)
func main() {
client := cloudflare.NewClient(
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
token, err := client.User.Tokens.New(context.TODO(), user.TokenNewParams{
Name: cloudflare.F("readonly token"),
Policies: cloudflare.F([]shared.TokenPolicyParam{shared.TokenPolicyParam{
Effect: cloudflare.F(shared.TokenPolicyEffectAllow),
PermissionGroups: cloudflare.F([]shared.TokenPolicyPermissionGroupParam{shared.TokenPolicyPermissionGroupParam{
ID: cloudflare.F("c8fed203ed3043cba015a93ad1616f1f"),
}, shared.TokenPolicyPermissionGroupParam{
ID: cloudflare.F("82e64a83756745bbbb1c9c2701bf816b"),
}}),
Resources: cloudflare.F[shared.TokenPolicyResourcesUnionParam](shared.TokenPolicyResourcesIAMResourcesTypeObjectStringParam(map[string]string{
"foo": "string",
})),
}}),
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", token.ID)
}
{
"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": "ed17574386854bf78a67040be0a770b0",
"condition": {
"request_ip": {
"in": [
"123.123.123.0/24",
"2606:4700::/32"
],
"not_in": [
"123.123.123.100/24",
"2606:4700:4700::/48"
]
}
},
"expires_on": "2020-01-01T00:00:00Z",
"issued_on": "2018-07-01T05:20:00Z",
"last_used_on": "2020-01-02T12:34:00Z",
"modified_on": "2018-07-02T05:20:00Z",
"name": "readonly token",
"not_before": "2018-07-01T05:20:00Z",
"policies": [
{
"id": "f267e341f3dd4697bd3b9f71dd96247f",
"effect": "allow",
"permission_groups": [
{
"id": "c8fed203ed3043cba015a93ad1616f1f",
"meta": {
"key": "key",
"value": "value"
},
"name": "Zone Read"
},
{
"id": "82e64a83756745bbbb1c9c2701bf816b",
"meta": {
"key": "key",
"value": "value"
},
"name": "Magic Network Monitoring"
}
],
"resources": {
"foo": "string"
}
}
],
"status": "active",
"value": "8M7wS6hCpXVc-DoRnPPY_UCWPgy8aea4Wy6kCe5T"
}
}Returns Examples
{
"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": "ed17574386854bf78a67040be0a770b0",
"condition": {
"request_ip": {
"in": [
"123.123.123.0/24",
"2606:4700::/32"
],
"not_in": [
"123.123.123.100/24",
"2606:4700:4700::/48"
]
}
},
"expires_on": "2020-01-01T00:00:00Z",
"issued_on": "2018-07-01T05:20:00Z",
"last_used_on": "2020-01-02T12:34:00Z",
"modified_on": "2018-07-02T05:20:00Z",
"name": "readonly token",
"not_before": "2018-07-01T05:20:00Z",
"policies": [
{
"id": "f267e341f3dd4697bd3b9f71dd96247f",
"effect": "allow",
"permission_groups": [
{
"id": "c8fed203ed3043cba015a93ad1616f1f",
"meta": {
"key": "key",
"value": "value"
},
"name": "Zone Read"
},
{
"id": "82e64a83756745bbbb1c9c2701bf816b",
"meta": {
"key": "key",
"value": "value"
},
"name": "Magic Network Monitoring"
}
],
"resources": {
"foo": "string"
}
}
],
"status": "active",
"value": "8M7wS6hCpXVc-DoRnPPY_UCWPgy8aea4Wy6kCe5T"
}
}