Skip to content
Start here

Create a new sinkhole for your account

client.Intel.Sinkholes.New(ctx, params) (*Sinkhole, error)
POST/accounts/{account_id}/intel/sinkholes

Create a new sinkhole. Logs of large request bodies will be truncated, but the full request body can be recorded in R2. If you wish to record large request bodies in R2, include the R2 key ID, key secret, and bucket name in the request body.

Security

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
Accepted Permissions (at least one required)
Intel Write
ParametersExpand Collapse
params SinkholeNewParams
AccountID param.Field[string]

Path param: Identifier.

maxLength32
Name param.Field[string]

Body param: The name of the sinkhole.

R2Bucket param.Field[string]Optional

Body param: The name of the R2 bucket to store results. Required if you want to store large request bodies in R2.

R2ID param.Field[string]Optional

Body param: The id of the R2 instance. Required if you want to store large request bodies in R2.

R2Secret param.Field[string]Optional

Body param: The secret key for the R2 API token. Required if you want to store large request bodies in R2.

ReturnsExpand Collapse
type Sinkhole struct{…}
ID stringOptional

The unique identifier for the sinkhole.

AccountTag stringOptional

The account tag that owns this sinkhole.

CreatedOn TimeOptional

The date and time when the sinkhole was created.

formatdate-time
ModifiedOn TimeOptional

The date and time when the sinkhole was last modified.

formatdate-time
Name stringOptional

The name of the sinkhole.

R2Bucket stringOptional

The name of the R2 bucket to store results.

R2ID stringOptional

The id of the R2 instance.

Create a new sinkhole for your account

package main

import (
  "context"
  "fmt"

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

func main() {
  client := cloudflare.NewClient(
    option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
    option.WithAPIEmail("user@example.com"),
  )
  sinkhole, err := client.Intel.Sinkholes.New(context.TODO(), intel.SinkholeNewParams{
    AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
    Name: cloudflare.F("name"),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", sinkhole.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": "93defa6e909e464e8c89a85859f36d3c",
    "account_tag": "233f45e61fd1f7e21e1e154ede4q2859",
    "created_on": "2023-05-12T12:21:56.777653Z",
    "modified_on": "2023-06-18T03:13:34.123321Z",
    "name": "my_sinkhole",
    "r2_bucket": "my_bucket",
    "r2_id": "example_r2_id"
  }
}
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": "93defa6e909e464e8c89a85859f36d3c",
    "account_tag": "233f45e61fd1f7e21e1e154ede4q2859",
    "created_on": "2023-05-12T12:21:56.777653Z",
    "modified_on": "2023-06-18T03:13:34.123321Z",
    "name": "my_sinkhole",
    "r2_bucket": "my_bucket",
    "r2_id": "example_r2_id"
  }
}