> ## Documentation Index > Fetch the complete documentation index at: https://bunny.net/docs/llms.txt > Use this file to discover all available pages before exploring further. # Get all Access Lists available for a Shield Zone ## OpenAPI ````yaml https://api.bunny.net/shield/docs/v1/swagger.json get /shield/shield-zone/{shieldZoneId}/access-lists openapi: 3.0.4 info: title: Bunny Shield API description: >- Bunny.net API for Bunny Shield (WAF, DDoS, Rate Limiting, Bot Detection, Access Lists & API Guardian). version: v1 servers: - url: https://api.bunny.net security: [] paths: /shield/shield-zone/{shieldZoneId}/access-lists: get: tags: - Access Lists summary: Get all Access Lists available for a Shield Zone operationId: Get Access Lists parameters: - name: shieldZoneId in: path description: The ID of the Shield Zone to which the Access Lists belong. required: true schema: type: integer description: The ID of the Shield Zone to which the Access Lists belong. format: int32 responses: '200': description: OK content: text/plain: schema: $ref: '#/components/schemas/AccessListsDetailsResponse' application/json: schema: $ref: '#/components/schemas/AccessListsDetailsResponse' text/json: schema: $ref: '#/components/schemas/AccessListsDetailsResponse' '401': description: Unauthorized content: text/plain: schema: $ref: '#/components/schemas/ProblemDetails' application/json: schema: $ref: '#/components/schemas/ProblemDetails' text/json: schema: $ref: '#/components/schemas/ProblemDetails' '500': description: Internal Server Error components: schemas: AccessListsDetailsResponse: type: object properties: managedLists: type: array items: $ref: '#/components/schemas/AccessListDetails' description: >- List of curated threat lists maintained by Bunny Shield with automatic updates. nullable: true customLists: type: array items: $ref: '#/components/schemas/AccessListDetails' description: List of custom access lists created and maintained by the user. nullable: true customEntryCount: type: integer description: >- Total number of entries across all custom access lists for this Shield Zone. format: int32 nullable: true customEntryLimit: type: integer description: >- Maximum number of entries allowed across all custom access lists based on the Shield plan. format: int32 nullable: true customListCount: type: integer description: Current number of custom access lists for this Shield Zone. format: int32 nullable: true customListLimit: type: integer description: >- Maximum number of custom access lists allowed based on the Shield plan. format: int32 nullable: true error: $ref: '#/components/schemas/GenericRequestResponse' additionalProperties: false description: >- Response containing comprehensive access list information for a Shield Zone, including both managed and custom lists. ProblemDetails: type: object properties: type: type: string nullable: true title: type: string nullable: true status: type: integer format: int32 nullable: true detail: type: string nullable: true instance: type: string nullable: true additionalProperties: {} AccessListDetails: required: - action - configurationId - entryCount - isEnabled - lastUpdated - listId - name - type type: object properties: listId: type: integer description: The unique identifier of the access list. format: int64 configurationId: type: integer description: The unique identifier of the access list configuration. format: int64 name: type: string description: The display name of the access list. nullable: true description: type: string description: Optional description of the access list's purpose or contents. nullable: true isEnabled: type: boolean description: Indicates whether the access list is currently enabled and active. type: $ref: '#/components/schemas/AccessListType' category: $ref: '#/components/schemas/AccessListCategory' action: $ref: '#/components/schemas/AccessListAction' requiredPlan: $ref: '#/components/schemas/ShieldPlanType' entryCount: type: integer description: The total number of entries currently in the access list. format: int64 updateFrequency: type: string description: >- How frequently the list is updated from its source. Only applicable to managed lists. format: date-span nullable: true lastUpdated: type: string description: The timestamp when the access list was last updated. format: date-time additionalProperties: false description: >- Represents detailed information about an access list and its configuration. GenericRequestResponse: type: object properties: statusCode: $ref: '#/components/schemas/HttpStatusCode' success: type: boolean description: Indicates whether the operation was successful. message: type: string description: Human-readable message describing the result of the operation. nullable: true errorKey: type: string description: Unique error key for programmatic error handling, if applicable. nullable: true additionalProperties: false description: >- Generic response object containing status information for API operations. AccessListType: enum: - 0 - 1 - 2 - 3 - 4 - 5 type: integer description: |- 0 = IP 1 = CIDR 2 = ASN 3 = Country 4 = Organization 5 = JA4 format: int32 x-enum-varnames: - IP - CIDR - ASN - Country - Organization - JA4 AccessListCategory: enum: - 0 - 1 - 2 - 4 - 8 - 16 - 32 - 64 - 128 - 256 - 512 - 1024 - 2048 - 4096 - 8192 type: integer description: |- 0 = None 1 = VPNs 2 = Datacenters 4 = Proxies 8 = TorExitNodes 16 = Botnets 32 = VulnerabilityScanners 64 = WebScrapers 128 = SearchEngines 256 = SearchEngineCrawlers 512 = AiSearch 1024 = AiCrawlers 2048 = AiAgents 4096 = PagePreview 8192 = InternetTools format: int32 x-enum-varnames: - None - VPNs - Datacenters - Proxies - TorExitNodes - Botnets - VulnerabilityScanners - WebScrapers - SearchEngines - SearchEngineCrawlers - AiSearch - AiCrawlers - AiAgents - PagePreview - InternetTools AccessListAction: enum: - 0 - 1 - 2 - 3 - 4 - 5 type: integer description: |- 0 = None 1 = Allow 2 = Block 3 = Challenge 4 = Log 5 = Bypass format: int32 x-enum-varnames: - None - Allow - Block - Challenge - Log - Bypass ShieldPlanType: enum: - 0 - 1 - 2 - 3 type: integer description: |- 0 = Basic 1 = Advanced 2 = Business 3 = Enterprise format: int32 x-enum-varnames: - Basic - Advanced - Business - Enterprise HttpStatusCode: enum: - 100 - 101 - 102 - 103 - 200 - 201 - 202 - 203 - 204 - 205 - 206 - 207 - 208 - 226 - 300 - 301 - 302 - 303 - 304 - 305 - 306 - 307 - 308 - 400 - 401 - 402 - 403 - 404 - 405 - 406 - 407 - 408 - 409 - 410 - 411 - 412 - 413 - 414 - 415 - 416 - 417 - 421 - 422 - 423 - 424 - 426 - 428 - 429 - 431 - 451 - 500 - 501 - 502 - 503 - 504 - 505 - 506 - 507 - 508 - 510 - 511 type: integer description: |- 100 = Continue 101 = SwitchingProtocols 102 = Processing 103 = EarlyHints 200 = OK 201 = Created 202 = Accepted 203 = NonAuthoritativeInformation 204 = NoContent 205 = ResetContent 206 = PartialContent 207 = MultiStatus 208 = AlreadyReported 226 = IMUsed 300 = MultipleChoices 300 = Ambiguous 301 = MovedPermanently 301 = Moved 302 = Found 302 = Redirect 303 = SeeOther 303 = RedirectMethod 304 = NotModified 305 = UseProxy 306 = Unused 307 = TemporaryRedirect 307 = RedirectKeepVerb 308 = PermanentRedirect 400 = BadRequest 401 = Unauthorized 402 = PaymentRequired 403 = Forbidden 404 = NotFound 405 = MethodNotAllowed 406 = NotAcceptable 407 = ProxyAuthenticationRequired 408 = RequestTimeout 409 = Conflict 410 = Gone 411 = LengthRequired 412 = PreconditionFailed 413 = RequestEntityTooLarge 414 = RequestUriTooLong 415 = UnsupportedMediaType 416 = RequestedRangeNotSatisfiable 417 = ExpectationFailed 421 = MisdirectedRequest 422 = UnprocessableEntity 422 = UnprocessableContent 423 = Locked 424 = FailedDependency 426 = UpgradeRequired 428 = PreconditionRequired 429 = TooManyRequests 431 = RequestHeaderFieldsTooLarge 451 = UnavailableForLegalReasons 500 = InternalServerError 501 = NotImplemented 502 = BadGateway 503 = ServiceUnavailable 504 = GatewayTimeout 505 = HttpVersionNotSupported 506 = VariantAlsoNegotiates 507 = InsufficientStorage 508 = LoopDetected 510 = NotExtended 511 = NetworkAuthenticationRequired format: int32 x-enum-varnames: - Continue - SwitchingProtocols - Processing - EarlyHints - OK - Created - Accepted - NonAuthoritativeInformation - NoContent - ResetContent - PartialContent - MultiStatus - AlreadyReported - IMUsed - MultipleChoices - Ambiguous - MovedPermanently - Moved - Found - Redirect - SeeOther - RedirectMethod - NotModified - UseProxy - Unused - TemporaryRedirect - RedirectKeepVerb - PermanentRedirect - BadRequest - Unauthorized - PaymentRequired - Forbidden - NotFound - MethodNotAllowed - NotAcceptable - ProxyAuthenticationRequired - RequestTimeout - Conflict - Gone - LengthRequired - PreconditionFailed - RequestEntityTooLarge - RequestUriTooLong - UnsupportedMediaType - RequestedRangeNotSatisfiable - ExpectationFailed - MisdirectedRequest - UnprocessableEntity - UnprocessableContent - Locked - FailedDependency - UpgradeRequired - PreconditionRequired - TooManyRequests - RequestHeaderFieldsTooLarge - UnavailableForLegalReasons - InternalServerError - NotImplemented - BadGateway - ServiceUnavailable - GatewayTimeout - HttpVersionNotSupported - VariantAlsoNegotiates - InsufficientStorage - LoopDetected - NotExtended - NetworkAuthenticationRequired ```` This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.