> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fingerprint.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Delete a visitor ID

> Use this API to request the deletion of all data associated with a specific visitor ID.

Upon a request to delete data for a visitor ID,
- The data collected from the corresponding browser (or device) will be deleted asynchronously, typically within a few minutes. This data will no longer be available to identify this browser (or device). When the same browser (or device) revisits, it will receive a new visitor ID.
- The identification events made from this browser (or device) in the past 10 days are typically deleted within 24 hrs. 
- The identification events made from this browser (or device) outside of the 10 days will be purged as per your [data retention period](https://docs.fingerprint.com/docs/regions#data-retention).

The following timeline illustrates which events are deleted and which remain after a DELETE API request:
```
Day 1:  First visit from browser A. (Assigned visitor ID: VID1000)
Day 2:  Browser A revisits. (Assigned the same visitor ID: VID1000)
Day 13: Browser A revisits. (Assigned the same visitor ID: VID1000)
Day 14: Delete VID1000
Day 15: Browser A re-visits. (Assigned a different visitor ID: VID9999)
Day 15: GET /events/day-13 (Returns 404. The event is within the 10 days of deleting VID1000 and will have been deleted)
Day 16: GET /events/day-2 (Returns 200. The event is outside of the 10 days of deleting VID1000 and is still available)
```

### Availability
This API is available only for Enterprise plans **upon request**. If you are interested, please [contact our support team](https://fingerprint.com/support/).

### Rate limits and daily quota
The rate limits and daily quota for this API **differ** from those for our other API.

The maximum number of DELETE requests that can be made in an hour cannot exceed 30 RPH, and the maximum number that can be made in a day cannot exceed 500 RPD.

You can request an increase to these limits by contacting [our support team](https://fingerprint.com/support/).    




## OpenAPI

````yaml delete /visitors/{visitor_id}
openapi: 3.0.3
info:
  title: Server API v3 (deprecated)
  description: >
    > 🚧 Deprecation Notice

    > 

    > This version of the API will **soon be deprecated** under our [API
    Deprecation
    Policy](https://dev.fingerprint.com/reference/api-deprecation-policy). The
    deprecation period will begin once all proxy and library integrations (both
    backend and frontend) are released. We will continue to provide full support
    for 12 months from that effective date. This notice will be updated with the
    **official deprecation date once it is set**. If you don’t use libraries or
    proxy integrations, you can use this [migration
    guide](https://dev.fingerprint.com/reference/migrating-from-server-api-v3-to-v4)
    to **start the transition to the new API today**.


    Fingerprint Server API allows you to search, update, and delete
    identification events in a server environment. It can be used for data
    exports, decision-making, and data analysis scenarios.

    Server API is intended for server-side usage, it's not intended to be used
    from the client side, whether it's a browser or a mobile device.
  version: '3'
  contact:
    name: Fingerprint Support
    email: support@fingerprint.com
  license:
    name: MIT
    url: >-
      https://github.com/fingerprintjs/fingerprint-pro-server-api-openapi/blob/main/LICENSE
servers:
  - url: https://api.fpjs.io
    description: Global
  - url: https://eu.api.fpjs.io
    description: EU
  - url: https://ap.api.fpjs.io
    description: Asia (Mumbai)
security:
  - ApiKeyHeader: []
  - ApiKeyQuery: []
tags:
  - name: Events
    description: >
      Retrieve or update information about individual events using the event's
      request ID.
  - name: Event Search
    description: |
      Search for events matching one or more filters.
  - name: Visitors
    description: |
      Retrieve all events of an individual visitor using their visitor ID.
  - name: Related Visitors
    description: >
      Find visitor IDs that originated from a different browser on the same
      mobile device.
paths:
  /visitors/{visitor_id}:
    delete:
      tags:
        - Visitors
      summary: Delete data by visitor ID
      description: >
        > 🚧 Deprecation Notice

        > 

        > This version of the API will **soon be deprecated** under our [API
        Deprecation
        Policy](https://dev.fingerprint.com/reference/api-deprecation-policy).
        The deprecation period will begin once all proxy and library
        integrations (both backend and frontend) are released. We will continue
        to provide full support for 12 months from that effective date. This
        notice will be updated with the **official deprecation date once it is
        set**. If you don’t use libraries or proxy integrations, you can use
        this [migration
        guide](https://dev.fingerprint.com/reference/migrating-from-server-api-v3-to-v4)
        to **start the transition to the new API today**.


        Request deleting all data associated with the specified visitor ID. This
        API is useful for compliance with privacy regulations.

        ### Which data is deleted?

        - Browser (or device) properties

        - Identification requests made from this browser (or device)


        #### Browser (or device) properties

        - Represents the data that Fingerprint collected from this specific
        browser (or device) and everything inferred and derived from it.

        - Upon request to delete, this data is deleted asynchronously (typically
        within a few minutes) and it will no longer be used to identify this
        browser (or device) for your [Fingerprint
        Workspace](https://dev.fingerprint.com/docs/glossary#fingerprint-workspace).


        #### Identification requests made from this browser (or device)

        - Fingerprint stores the identification requests made from a browser (or
        device) for up to 30 (or 90) days depending on your plan. To learn more,
        see [Data
        Retention](https://dev.fingerprint.com/docs/regions#data-retention).

        - Upon request to delete, the identification requests that were made by
        this browser
          - Within the past 10 days are deleted within 24 hrs.
          - Outside of 10 days are allowed to purge as per your data retention period.

        ### Corollary

        After requesting to delete a visitor ID,

        - If the same browser (or device) requests to identify, it will receive
        a different visitor ID.

        - If you request [`/events`
        API](https://dev.fingerprint.com/reference/getevent) with a `request_id`
        that was made outside of the 10 days, you will still receive a valid
        response.

        - If you request [`/visitors`
        API](https://dev.fingerprint.com/reference/getvisits) for the deleted
        visitor ID, the response will include identification requests that were
        made outside of those 10 days.


        ### Interested?

        Please [contact our support team](https://fingerprint.com/support/) to
        enable it for you. Otherwise, you will receive a 403.
      operationId: deleteVisitorData
      parameters:
        - name: visitor_id
          in: path
          required: true
          schema:
            type: string
          description: >-
            The [visitor
            ID](https://dev.fingerprint.com/reference/get-function#visitorid)
            you want to delete.
      responses:
        '200':
          description: OK. The visitor ID is scheduled for deletion.
        '400':
          description: >-
            Bad request. The visitor ID parameter is missing or in the wrong
            format.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                400-visitor-id-required:
                  summary: >-
                    Error response when the request does not include a visitor
                    ID.
                  value:
                    error:
                      code: RequestCannotBeParsed
                      message: visitor id is required
                400-visitor-id-invalid:
                  summary: Error response when the visitor ID is incorrectly formatted.
                  value:
                    error:
                      code: RequestCannotBeParsed
                      message: invalid visitor id
        '403':
          description: Forbidden. Access to this API is denied.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                403-token-required:
                  summary: Error response when the secret API key was not provided.
                  value:
                    error:
                      code: TokenRequired
                      message: secret key is required
                403-token-not-found:
                  summary: >-
                    Error response when the provided secret API key does not
                    exist.
                  value:
                    error:
                      code: TokenNotFound
                      message: secret key is not found
                403-wrong-region:
                  summary: >-
                    Error response when the API region is different from the
                    region, the calling application is configured with.
                  value:
                    error:
                      code: WrongRegion
                      message: wrong region
                403-subscription-not-active:
                  summary: Error response when the subscription is not active.
                  value:
                    error:
                      code: SubscriptionNotActive
                      message: forbidden
                403-feature-not-enabled:
                  summary: >-
                    Error response when this feature is not enabled for a
                    subscription.
                  value:
                    error:
                      code: FeatureNotEnabled
                      message: feature not enabled
                403-workspace-scoped-secret-key-required:
                  summary: >-
                    Error response when you use an environment-scoped secret key
                    to delete visitors from the workspace.
                  value:
                    error:
                      code: WorkspaceScopedSecretKeyRequired
                      message: workspace-scoped secret key is required
        '404':
          description: >-
            Not found. The visitor ID cannot be found in this application's
            data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                404-visitor-not-found:
                  summary: >-
                    Error response when the visitor ID cannot be found in this
                    application's data.
                  value:
                    error:
                      code: VisitorNotFound
                      message: visitor not found
        '429':
          description: Too Many Requests. The request is throttled.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                429-too-many-requests:
                  summary: >-
                    Error response when the limit on the provided secret API key
                    requests per second has been exceeded.
                  value:
                    error:
                      code: TooManyRequests
                      message: too many requests
components:
  schemas:
    ErrorResponse:
      type: object
      additionalProperties: false
      required:
        - error
      properties:
        error:
          $ref: '#/components/schemas/Error'
    Error:
      type: object
      additionalProperties: false
      required:
        - code
        - message
      properties:
        code:
          $ref: '#/components/schemas/ErrorCode'
        message:
          type: string
    ErrorCode:
      type: string
      enum:
        - RequestCannotBeParsed
        - TokenRequired
        - TokenNotFound
        - SubscriptionNotActive
        - WrongRegion
        - FeatureNotEnabled
        - WorkspaceScopedSecretKeyRequired
        - RequestNotFound
        - VisitorNotFound
        - TooManyRequests
        - 429 Too Many Requests
        - StateNotReady
        - Failed
      description: |
        Error code:
         * `RequestCannotBeParsed` - the query parameters or JSON payload contains some errors 
                  that prevented us from parsing it (wrong type/surpassed limits).
         * `TokenRequired` - `Auth-API-Key` header is missing or empty.
         * `TokenNotFound` - no Fingerprint application found for specified secret key.
         * `SubscriptionNotActive` - Fingerprint application is not active.
         * `WrongRegion` - server and application region differ.
         * `FeatureNotEnabled` - this feature (for example, Delete API) is not enabled for your application.
         * `WorkspaceScopedSecretKeyRequired` - The provided secret API key is scoped to an environment, but this operation requires a workspace-scoped secret API key.
         * `RequestNotFound` - the specified request ID was not found. It never existed, expired, or it has been deleted.
         * `VisitorNotFound` - The specified visitor ID was not found. It never existed or it may have already been deleted.
         * `TooManyRequests` - the limit on secret API key requests per second has been exceeded.
         * `429 Too Many Requests` - the limit on secret API key requests per second has been exceeded.
         * `StateNotReady` - The event specified with request id is
                  not ready for updates yet. Try again.
                  This error happens in rare cases when update API is called immediately
                  after receiving the request id on the client. In case you need to send
                  information right away, we recommend using the JS agent API instead.
         * `Failed` - internal server error.
  securitySchemes:
    ApiKeyHeader:
      type: apiKey
      in: header
      name: Auth-API-Key
    ApiKeyQuery:
      type: apiKey
      in: query
      name: api_key

````