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

# Update a 3D Secure request

> Send the result of a customer authentication.

## Update 3D Secure authentication request

<Note>
  **PATCH** `/v2/cards/3ds`
</Note>

### Request

Use this request to update a 3D Secure (3DS) authentication request and send the result to the access control server (ACS).

<CodeGroup>
  ```bash Sample request theme={null}
  curl -i -X PATCH \
    'https://api.equalsmoney.com/v2/cards/3ds?accountId=F12345&personId=775596ae-2624-40af-a9dc-9756110a4a04' \
    -H 'Authorization: ApiKey YOUR_API_KEY_HERE' \
    -H 'Content-Type: application/json' \
    -d '{
      "authenticationMethod": "BIOMETRIC_FACE",
      "authenticationResult": "SUCCESS",
      "acsTransactionId": "c92aafca-5e9e-43fa-b7cc-cd20ece475f5",
      "messageVersion": "2.1.0"
    }'
  ```

  ```bash Request structure theme={null}
  curl -i -X PATCH \
    'https://api.equalsmoney.com/v2/cards/3ds?accountId={accountId}&personId={personId}' \
    -H 'Authorization: ApiKey YOUR_API_KEY_HERE' \
    -H 'Content-Type: application/json' \
    -d '{
      "authenticationMethod": "string",
      "authenticationResult": "string",
      "acsTransactionId": "string",
      "messageVersion": "string"
    }'
  ```
</CodeGroup>

#### Query parameters

<ParamField body="accountId" type="string" required>
  The ID of the account that the card is associated with.

  Allowable values: An existing `accountId`
</ParamField>

<ParamField body="personId" type="string (uuid)">
  The person that the card belongs to.

  Allowable values: An existing `personId` (≤ 36 characters)
</ParamField>

#### Request body schema

<ParamField body="authenticationMethod" type="string" required>
  The method used to authenticate the cardholder.

  Allowable values: `BIOMETRIC_FACE`, `BIOMETRIC_FINGERPRINT`, `VOICE_RECOGNITION`, `IN_APP_LOGIN`, `AUDIO_CALL`, `VIDEO_CALL`, `OTP_SMS`, `OTP_EMAIL`, `KNOWLEDGE_BASED`, `OTHER`
</ParamField>

<ParamField body="authenticationResult" type="string" required>
  The result of the authentication that was performed.

  Allowable values: `SUCCESS`, `FAILED`, `CANCELLED`, `NOT_AUTHENTICATED`
</ParamField>

<ParamField body="acsTransactionId" type="string" required>
  The unique transaction identifier assigned by the ACS to identify the transaction.

  Allowable values: ≤ 36 characters
</ParamField>

<ParamField body="messageVersion" type="string" required>
  The 3DS protocol version used by the 3DS Requestor.

  Allowable values: ≤ 8 characters
</ParamField>

### Response

If your request is successful, you'll receive a `200` response.

<CodeGroup>
  ```json Sample response theme={null}
  {
    "success": true
  }
  ```

  ```json Response structure theme={null}
  {
    "success": boolean
  }
  ```
</CodeGroup>

For more detailed information about this request and its response, [see the API reference](/api-reference/cards/update-a-3ds-authentication-request).
