---
updatedAt: 2026-06-04T19:58:43.000Z
agentTools:
  projectIndex: https://docs.wristband.dev/llms.txt
---

# Get Bot Detection Policy

Retrieves the specified bot detection policy.

### Required Permissions

Below is the list of required permissions needed to interact with this API.  For each permission, the allowed permission boundaries are also specified.

| Permission                    | Boundary    | Description                                                                                       |
| ----------------------------- | ----------- | ------------------------------------------------------------------------------------------------- |
| **bot-detection-policy:read** | Application | The subject can read all bot detection policies for the application to which the subject belongs. |

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "Resource Management APIs",
    "version": "1.0.0",
    "description": "Resource Management APIs",
    "license": {
      "name": "Private",
      "url": "https://wristband.dev/terms/"
    },
    "termsOfService": "https://wristband.dev/terms/",
    "contact": {
      "name": "Wristband Support",
      "email": "support@wristband.dev",
      "url": "https://wristband.dev/contact/"
    }
  },
  "servers": [
    {
      "url": "https://{application_vanity_domain}",
      "description": "Wristband application scoped URL.",
      "variables": {
        "application_vanity_domain": {
          "default": "yourapp-yourorg.us.wristband.dev",
          "description": "Wristband vanity domain scoped to a specific application."
        }
      }
    }
  ],
  "tags": [
    {
      "name": "Bot Detection Policies",
      "description": "Bot Detection Policies",
      "x-displayName": "Bot Detection Policies"
    }
  ],
  "paths": {
    "/api/v1/bot-detection-policies/{botDetectionPolicyId}": {
      "parameters": [
        {
          "$ref": "#/components/parameters/Resource_Management_APIs_BotDetectionPolicyId"
        }
      ],
      "get": {
        "summary": "Get Bot Detection Policy",
        "operationId": "getBotDetectionPolicyV1",
        "tags": [
          "Bot Detection Policies"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/Resource_Management_APIs_Fields"
          },
          {
            "$ref": "#/components/parameters/Resource_Management_APIs_If-None-Match"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "ETag": {
                "$ref": "#/components/headers/Resource_Management_APIs_ETag"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Resource_Management_APIs_BotDetectionPolicy"
                },
                "examples": {
                  "Example 1 - Get Bot Detection Policy": {
                    "$ref": "#/components/examples/Resource_Management_APIs_BotDetectionPolicy"
                  }
                }
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/Resource_Management_APIs_400-default"
          },
          "401": {
            "$ref": "#/components/responses/Resource_Management_APIs_401"
          },
          "403": {
            "$ref": "#/components/responses/Resource_Management_APIs_403"
          },
          "404": {
            "$ref": "#/components/responses/Resource_Management_APIs_404-bot-detection-policy-not-found"
          },
          "405": {
            "$ref": "#/components/responses/Resource_Management_APIs_405"
          },
          "406": {
            "$ref": "#/components/responses/Resource_Management_APIs_406"
          },
          "500": {
            "$ref": "#/components/responses/Resource_Management_APIs_500"
          },
          "503": {
            "$ref": "#/components/responses/Resource_Management_APIs_503"
          }
        },
        "security": [
          {
            "Resource_Management_APIs_BearerAuth": []
          }
        ]
      }
    }
  },
  "components": {
    "securitySchemes": {
      "Resource_Management_APIs_BearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    },
    "parameters": {
      "Resource_Management_APIs_Fields": {
        "name": "fields",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string",
          "default": "*",
          "example": "field1,field2",
          "minLength": 0
        },
        "description": "List of resource fields that should be returned in a response.  The wildcard value of `*` can be used to return all fields for the resource.",
        "style": "form"
      },
      "Resource_Management_APIs_If-None-Match": {
        "name": "If-None-Match",
        "description": "Used to perform a conditional get of the resource",
        "in": "header",
        "required": false,
        "schema": {
          "type": "string",
          "example": "\"0\",\"2\"",
          "minLength": 0
        }
      },
      "Resource_Management_APIs_BotDetectionPolicyId": {
        "name": "botDetectionPolicyId",
        "description": "The ID of the bot detection policy",
        "in": "path",
        "required": true,
        "schema": {
          "type": "string",
          "minLength": 1,
          "maxLength": 26,
          "example": "imypz2gzzvbsbfdepwyqprenke"
        }
      }
    },
    "schemas": {
      "Resource_Management_APIs_id": {
        "type": "string",
        "minLength": 1,
        "maxLength": 26,
        "example": "pl4a4aa4jzydksmrf3jnu5yfcw",
        "description": "Globally unique Id of the resource.",
        "readOnly": true
      },
      "Resource_Management_APIs_api-error": {
        "title": "ApiError",
        "type": "object",
        "description": "API error object",
        "x-examples": {
          "Example 1": {
            "code": "invalid_request",
            "message": "The request was invalid",
            "ticket": "11t7n71hi5e6t"
          }
        },
        "properties": {
          "type": {
            "type": "string",
            "example": "base_error",
            "minLength": 1,
            "description": "The type of the API error.",
            "readOnly": true
          },
          "code": {
            "type": "string",
            "example": "invalid_request",
            "minLength": 1,
            "description": "A code identifying the error that occurred.",
            "readOnly": true
          },
          "message": {
            "type": "string",
            "example": "The request was invalid",
            "description": "A free text message describing the error.  This error message is only meant to help developers understand the cause of the error.  It should not be used for programmatic purposes.",
            "readOnly": true
          },
          "ticket": {
            "type": "string",
            "example": "11t7n71hi5e6t",
            "description": "Ticket that can help correlate the error to the backend",
            "readOnly": true
          },
          "details": {
            "type": "object",
            "description": "A map of details about the error. The keys are defined by the API.",
            "additionalProperties": {},
            "example": {
              "attemptsRemaining": 4
            }
          }
        },
        "required": [
          "type",
          "code"
        ]
      },
      "Resource_Management_APIs_constraint-violations-api-error": {
        "title": "ConstraintViolationsApiError",
        "description": "An API error that occurred due to a constraint violation",
        "allOf": [
          {
            "$ref": "#/components/schemas/Resource_Management_APIs_api-error"
          },
          {
            "type": "object",
            "readOnly": true,
            "required": [
              "violations"
            ],
            "properties": {
              "violations": {
                "type": "object",
                "readOnly": true,
                "required": [
                  "code"
                ],
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "A code identifying the constraint violation.",
                    "minLength": 1,
                    "example": "too_long"
                  },
                  "constraintAttributes": {
                    "type": "object",
                    "description": "A map of constraint attribute values.",
                    "additionalProperties": {
                      "type": "string"
                    },
                    "example": {
                      "maxLength": "10"
                    }
                  }
                }
              }
            }
          }
        ],
        "x-examples": {
          "Example 1": {
            "type": "constraint_violations_error",
            "code": "message_body_constraint_violations",
            "message": "The request contained invalid fields",
            "ticket": "11t7n71hi5e6t",
            "violations": {
              "field1": {
                "code": "too_long",
                "constraintAttributes": {
                  "maxLength": "10"
                }
              },
              "field2": {
                "code": "not_null"
              }
            }
          }
        }
      },
      "Resource_Management_APIs_upsertOwnerId": {
        "description": "[Required on Create and Upsert] The ID of the owner of the resource.",
        "type": "string",
        "minLength": 1,
        "maxLength": 26,
        "example": "d7aml4q5lza3fdi2gavzdliouy"
      },
      "Resource_Management_APIs_version-metadata": {
        "title": "VersionMetadata",
        "type": "object",
        "description": "Version metadata associated to a resource.",
        "properties": {
          "version": {
            "type": "string",
            "example": "1.0",
            "description": "The version of the resource",
            "readOnly": true
          },
          "lastModifiedTime": {
            "type": "string",
            "format": "date-time",
            "example": "2016-06-13T19:49:31.686Z",
            "description": "The time at which the resource was last modified",
            "readOnly": true
          },
          "creationTime": {
            "type": "string",
            "format": "date-time",
            "example": "2016-06-13T19:49:31.686Z",
            "description": "The time at which the resource was created",
            "readOnly": true
          }
        }
      },
      "Resource_Management_APIs_BotDetectionPolicy": {
        "title": "Bot Detection Policy",
        "description": "Bot Detection Policy",
        "type": "object",
        "x-tags": [
          "Models"
        ],
        "required": [
          "ownerType",
          "ownerId"
        ],
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Resource_Management_APIs_id"
          },
          "ownerType": {
            "$ref": "#/components/schemas/Resource_Management_APIs_applicationOnlyUpsertOwnerType"
          },
          "ownerId": {
            "$ref": "#/components/schemas/Resource_Management_APIs_upsertOwnerId"
          },
          "loginCaptchaEnforcementStrategy": {
            "type": "string",
            "enum": [
              "ALWAYS",
              "NEVER"
            ],
            "default": "ALWAYS",
            "description": "The captcha enforcement strategy that will be used when users attempt to perform the login workflow.\n\n**Supported Strategies:**\n- `ALWAYS`: Users will always be forced to solve a captcha during the current auth workflow.\n- `NEVER`: Users will never have to solve a captcha during the current auth workflow."
          },
          "metadata": {
            "$ref": "#/components/schemas/Resource_Management_APIs_version-metadata"
          }
        },
        "example": {
          "id": "fcwpl4a4aa4jzydksmrf3jnu5y",
          "ownerType": "APPLICATION",
          "ownerId": "d7aml4q5lza3fdi2gavzdliouy",
          "loginCaptchaEnforcementStrategy": "ALWAYS",
          "metadata": {
            "version": "0.0",
            "lastModifiedTime": "2021-06-13T19:49:31.686Z",
            "creationTime": "2021-06-13T19:49:31.686Z"
          }
        }
      },
      "Resource_Management_APIs_applicationOnlyUpsertOwnerType": {
        "description": "[Required on Create and Upsert] The type of the owner of the resource.",
        "type": "string",
        "enum": [
          "APPLICATION"
        ],
        "minLength": 1,
        "maxLength": 30,
        "example": "APPLICATION"
      }
    },
    "examples": {
      "Resource_Management_APIs_BotDetectionPolicy": {
        "description": "Basic example of a bot detection policy JSON object with all fields present.",
        "value": {
          "id": "a4jzydksmrf3jnu5yfcwpl4a4a",
          "ownerType": "APPLICATION",
          "ownerId": "d7aml4q5lza3fdi2gavzdliouy",
          "loginCaptchaEnforcementStrategy": "ALWAYS",
          "metadata": {
            "version": "0.0",
            "lastModifiedTime": "2021-06-13T19:49:31.686Z",
            "creationTime": "2021-06-13T19:49:31.686Z"
          }
        }
      }
    },
    "headers": {
      "Resource_Management_APIs_ETag": {
        "schema": {
          "type": "string",
          "example": "1.0",
          "minLength": 1
        },
        "description": "The version of the resource"
      }
    },
    "responses": {
      "Resource_Management_APIs_401": {
        "description": "Unauthorized",
        "headers": {
          "WWW-Authenticate": {
            "description": "Includes details on the failed authentication condition. This header is set in accordance with the [OAuth2 specification](https://datatracker.ietf.org/doc/html/rfc6750#section-3).",
            "schema": {
              "type": "string",
              "example": "Bearer error=\"invalid_token\", error_description=\"The provided access token was invalid\""
            }
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Resource_Management_APIs_api-error"
            },
            "examples": {
              "code - unauthenticated": {
                "value": {
                  "type": "base_error",
                  "code": "invalid_access_token",
                  "message": "The provided access token was invalid",
                  "ticket": "1u0d0edhwbjsd"
                }
              }
            }
          }
        }
      },
      "Resource_Management_APIs_403": {
        "description": "Forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Resource_Management_APIs_api-error"
            },
            "examples": {
              "code - unauthorized": {
                "value": {
                  "type": "base_error",
                  "code": "unauthorized",
                  "message": "The request failed authorization",
                  "ticket": "11t7n71hi5e6t"
                }
              }
            }
          }
        }
      },
      "Resource_Management_APIs_405": {
        "description": "Method Not Allowed",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Resource_Management_APIs_api-error"
            },
            "examples": {
              "code - method_not_supported": {
                "value": {
                  "type": "base_error",
                  "code": "method_not_supported",
                  "message": "The specified HTTP method is not supported",
                  "ticket": "11t7n71hi5e6t"
                }
              }
            }
          }
        }
      },
      "Resource_Management_APIs_406": {
        "description": "Not Acceptable",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Resource_Management_APIs_api-error"
            },
            "examples": {
              "code - not_acceptable": {
                "value": {
                  "type": "base_error",
                  "code": "not_acceptable",
                  "message": "The Accept header was invalid",
                  "ticket": "11t7n71hi5e6t"
                }
              }
            }
          }
        }
      },
      "Resource_Management_APIs_500": {
        "description": "Internal Server Error",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Resource_Management_APIs_api-error"
            },
            "examples": {
              "code - internal_server_failure ": {
                "value": {
                  "type": "base_error",
                  "code": "internal_server_failure",
                  "message": "An unexpected error occurred while processing the request",
                  "ticket": "11t7n71hi5e6t"
                }
              }
            }
          }
        }
      },
      "Resource_Management_APIs_503": {
        "description": "Service Unavailable",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Resource_Management_APIs_api-error"
            },
            "examples": {
              "code - service_unavailable": {
                "value": {
                  "type": "base_error",
                  "code": "service_unavailable",
                  "message": "The service is currently unavailable",
                  "ticket": "11t7n71hi5e6t"
                }
              }
            }
          }
        }
      },
      "Resource_Management_APIs_400-default": {
        "description": "Bad Request",
        "content": {
          "application/json": {
            "schema": {
              "oneOf": [
                {
                  "$ref": "#/components/schemas/Resource_Management_APIs_api-error"
                },
                {
                  "$ref": "#/components/schemas/Resource_Management_APIs_constraint-violations-api-error"
                }
              ]
            },
            "examples": {
              "code - invalid_request": {
                "value": {
                  "type": "base_error",
                  "code": "invalid_request",
                  "message": "The request was invalid",
                  "ticket": "11t7n71hi5e6t"
                }
              },
              "code - request_constraint_violations": {
                "value": {
                  "type": "constraint_violations_error",
                  "code": "message_body_constraint_violations",
                  "message": "The message body contained invalid fields",
                  "ticket": "11t7n71hi5e6t",
                  "violations": {
                    "field1": {
                      "code": "too_long",
                      "constraintAttributes": {
                        "maxLength": 10
                      }
                    },
                    "field2": {
                      "code": "not_null"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "Resource_Management_APIs_404-bot-detection-policy-not-found": {
        "description": "Not Found",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Resource_Management_APIs_api-error"
            },
            "examples": {
              "code - bot_detection_policy_not_found": {
                "value": {
                  "type": "base_error",
                  "code": "bot_detection_policy_not_found",
                  "message": "Bot detection policy could not be found",
                  "ticket": "11t7n71hi5e6t"
                }
              }
            }
          }
        }
      }
    }
  },
  "x-tagGroups": [
    {
      "name": "Resource Management APIs",
      "tags": [
        "Applications",
        "Auth Factors",
        "Auth Sessions",
        "Auth Session Policies",
        "Bot Detection Policies",
        "Custom Claims",
        "Custom Domains",
        "Email Brandings",
        "Email Domains",
        "Email Policies",
        "External IdP Profiles",
        "External IdP Tokens",
        "Identity Providers",
        "IdP Attribute Mappings",
        "IdP Role Mappings",
        "MFA Policies",
        "OAuth2 Clients",
        "Page Brandings",
        "Password Policies",
        "Permissions",
        "Permission Boundaries",
        "Permission Groups",
        "Refresh Tokens",
        "Remembered Tenants",
        "Roles",
        "Role Assignment Policies",
        "Signing Keys",
        "Tenants",
        "Users",
        "User Schemas",
        "Vanity Domains",
        "Webhook Policies",
        "Workflow Policies"
      ]
    }
  ]
}
```