Create a new share
client.ResourceSharing.New(ctx, params) (*ResourceSharingNewResponse, error)
POST/accounts/{account_id}/shares
Creates a new resource share for sharing Cloudflare resources with other accounts or organizations.
Security
API Email + API Key
The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.
Example:
The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.
Example:
Create a new share
package main
import (
"context"
"fmt"
"github.com/cloudflare/cloudflare-go"
"github.com/cloudflare/cloudflare-go/option"
"github.com/cloudflare/cloudflare-go/resource_sharing"
)
func main() {
client := cloudflare.NewClient(
option.WithAPIKey("144c9defac04969c7bfad8efaa8ea194"),
option.WithAPIEmail("user@example.com"),
)
resourceSharing, err := client.ResourceSharing.New(context.TODO(), resource_sharing.ResourceSharingNewParams{
AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
Name: cloudflare.F("My Shared WAF Managed Rule"),
Recipients: cloudflare.F([]resource_sharing.ResourceSharingNewParamsRecipient{resource_sharing.ResourceSharingNewParamsRecipient{
}}),
Resources: cloudflare.F([]resource_sharing.ResourceSharingNewParamsResource{resource_sharing.ResourceSharingNewParamsResource{
Meta: cloudflare.F[any](map[string]interface{}{
}),
ResourceAccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
ResourceID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
ResourceType: cloudflare.F(resource_sharing.ResourceSharingNewParamsResourcesResourceTypeCustomRuleset),
}}),
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", resourceSharing.ID)
}
{
"errors": [
{
"code": 1000,
"message": "message",
"documentation_url": "documentation_url",
"source": {
"pointer": "pointer"
}
}
],
"success": true,
"result": {
"id": "3fd85f74b32742f1bff64a85009dda07",
"account_id": "023e105f4ecef8ad9ca31a8372d0c353",
"account_name": "Account A",
"created": "2023-09-21T18:56:32.624632Z",
"modified": "2023-09-21T18:56:32.624632Z",
"name": "My Shared WAF Managed Rule",
"organization_id": "023e105f4ecef8ad9ca31a8372d0c353",
"status": "active",
"target_type": "account",
"associated_recipient_count": 10,
"associating_recipient_count": 1,
"disassociated_recipient_count": 0,
"disassociating_recipient_count": 0,
"kind": "sent",
"resources": [
{
"id": "023e105f4ecef8ad9ca31a8372d0c353",
"created": "2023-09-21T18:56:32.624632Z",
"meta": {},
"modified": "2023-09-21T18:56:32.624632Z",
"resource_account_id": "023e105f4ecef8ad9ca31a8372d0c353",
"resource_id": "023e105f4ecef8ad9ca31a8372d0c353",
"resource_type": "custom-ruleset",
"resource_version": 0,
"status": "active"
}
]
}
}Returns Examples
{
"errors": [
{
"code": 1000,
"message": "message",
"documentation_url": "documentation_url",
"source": {
"pointer": "pointer"
}
}
],
"success": true,
"result": {
"id": "3fd85f74b32742f1bff64a85009dda07",
"account_id": "023e105f4ecef8ad9ca31a8372d0c353",
"account_name": "Account A",
"created": "2023-09-21T18:56:32.624632Z",
"modified": "2023-09-21T18:56:32.624632Z",
"name": "My Shared WAF Managed Rule",
"organization_id": "023e105f4ecef8ad9ca31a8372d0c353",
"status": "active",
"target_type": "account",
"associated_recipient_count": 10,
"associating_recipient_count": 1,
"disassociated_recipient_count": 0,
"disassociating_recipient_count": 0,
"kind": "sent",
"resources": [
{
"id": "023e105f4ecef8ad9ca31a8372d0c353",
"created": "2023-09-21T18:56:32.624632Z",
"meta": {},
"modified": "2023-09-21T18:56:32.624632Z",
"resource_account_id": "023e105f4ecef8ad9ca31a8372d0c353",
"resource_id": "023e105f4ecef8ad9ca31a8372d0c353",
"resource_type": "custom-ruleset",
"resource_version": 0,
"status": "active"
}
]
}
}