# Create a Cloudflare zone asn intel > Name, organisation and country for networks (ASNs) in this zone's WAF rules and traffic, from Cloudflare Radar. Source: https://docs.vigilbase.com/one/api/reference/services/post-services-cloudflare-zones-zone-id-asn-intel `POST https://one.vigilbase.com/api/services/cloudflare/zones/{zoneId}/asn-intel` Name, organisation and country for networks (ASNs) in this zone's WAF rules and traffic, from Cloudflare Radar. Only callers who can read the zone may ask, and each user has a lookup budget. ## Authorizations Send one of these: - `Authorization` (string, header, required): Bearer access token from Vigilbase Identity (`auth.vigilbase.com`), sent as `Authorization: Bearer `. The CLI gets one with `vigilbase login`. - `Authorization` (string, header, required): Organisation API key (`vb_one_…`) from **Settings → API keys** in Vigilbase One, sent as `Authorization: Bearer vb_one_…`. Needs a key with write access: read-only keys get `403` with the code `read_only_key`. See [organisation API keys](https://docs.vigilbase.com/one/api#organisation-api-keys). ## Path parameters - `zoneId` (string, required) ## Body (application/json) Validation schema (Zod source): ```ts BodySchema = z.object({ customerId: z.string().uuid(), asns: z.array(z.string().min(1).max(12)).min(1).max(MAX_ASNS_PER_REQUEST), }) ``` ## Responses ### 200 Success ### 401 Authentication required ### 403 Not permitted ## Example request ```bash # Token from `vigilbase login`, or a write API key (vb_one_…) curl --request POST \ --url 'https://one.vigilbase.com/api/services/cloudflare/zones/{zoneId}/asn-intel' \ --header "Authorization: Bearer $VIGILBASE_TOKEN" \ --header 'Content-Type: application/json' \ --data '{}' ```