---
title: "POST /3ds/sessions"
method: POST
path: "/3ds/sessions"
tags: ["ThreeDS"]
---

# POST /3ds/sessions

`POST /3ds/sessions`

## Request body

- CreateThreeDSSessionRequest
  - `pan` string, nullable
  - `token_id` string, nullable
  - `token_intent_id` string, nullable
  - `type` string, nullable
  - `device` string, nullable
  - `web_challenge_mode` string, nullable
  - `device_info` ThreeDSDeviceInfo
    - `browser_accept_header` string, nullable
    - `browser_ip` string, nullable
    - `browser_javascript_enabled` boolean, nullable
    - `browser_java_enabled` boolean, nullable
    - `browser_language` string, nullable
    - `browser_color_depth` string, nullable
    - `browser_screen_height` string, nullable
    - `browser_screen_width` string, nullable
    - `browser_tz` string, nullable
    - `browser_user_agent` string, nullable
    - `sdk_transaction_id` string, nullable
    - `sdk_application_id` string, nullable
    - `sdk_encryption_data` string, nullable
    - `sdk_ephemeral_public_key` string, nullable
    - `sdk_max_timeout` string, nullable
    - `sdk_reference_number` string, nullable
    - `sdk_render_options` ThreeDSMobileSdkRenderOptions
      - `sdk_interface` string, nullable
      - `sdk_ui_type` string[], nullable
  - `authentication_request` AuthenticateThreeDSSessionRequest
    - `authentication_category` string, required
    - `authentication_type` string, required
    - `card_brand` string, nullable
    - `challenge_preference` string, nullable
    - `request_decoupled_challenge` boolean
    - `decoupled_challenge_max_time` integer, nullable
    - `purchase_info` ThreeDSPurchaseInfo
      - `amount` string, nullable
      - `currency` string, nullable
      - `exponent` string, nullable
      - `date` string, nullable
      - `transaction_type` string, nullable
      - `installment_count` string, nullable
      - `recurring_expiration` string, nullable
      - `recurring_frequency` string, nullable
    - `merchant_info` ThreeDSMerchantInfo
      - `mid` string, nullable
      - `acquirer_bin` string, nullable
      - `name` string, nullable
      - `country_code` string, nullable
      - `category_code` string, nullable
      - `url` string, nullable
      - `risk_info` ThreeDSMerchantRiskInfo
        - `delivery_email` string, nullable
        - `delivery_time_frame` string, nullable
        - `gift_card_amount` string, nullable
        - `gift_card_count` string, nullable
        - `gift_card_currency` string, nullable
        - `pre_order_purchase` boolean, nullable
        - `pre_order_date` string, nullable
        - `reordered_purchase` boolean, nullable
        - `shipping_method` string, nullable
    - `requestor_info` ThreeDSRequestorInfo
      - `id` string, nullable
      - `name` string, nullable
      - `url` string, nullable
      - `discover_client_id` string, nullable
      - `discover_requestor_id` string, nullable
      - `amex_requestor_type` string, nullable
      - `cb_siret_number` string, nullable
    - `cardholder_info` ThreeDSCardholderInfo
      - `account_id` string, nullable
      - `account_type` string, nullable
      - `account_info` ThreeDSCardholderAccountInfo
        - `account_age` string, nullable
        - `account_last_changed` string, nullable
        - `account_change_date` string, nullable
        - `account_created_date` string, nullable
        - `account_pwd_last_changed` string, nullable
        - `account_pwd_change_date` string, nullable
        - `purchase_count_half_year` string, nullable
        - `transaction_count_day` string, nullable
        - `payment_account_age` string, nullable
        - `transaction_count_year` string, nullable
        - `payment_account_created` string, nullable
        - `shipping_address_first_used` string, nullable
        - `shipping_address_usage_date` string, nullable
        - `shipping_account_name_match` boolean, nullable
        - `suspicious_activity_observed` boolean, nullable
      - `authentication_info` ThreeDSCardholderAuthenticationInfo
        - `method` string, nullable
        - `timestamp` string, nullable
        - `data` string, nullable
      - `prior_authentication_info` ThreeDSPriorAuthenticationInfo
        - `method` string, nullable
        - `timestamp` string, nullable
        - `reference_id` string, nullable
        - `data` string, nullable
      - `name` string, nullable
      - `email` string, nullable
      - `phone_number` ThreeDSCardholderPhoneNumber
        - `country_code` string, nullable
        - `number` string, nullable
      - `mobile_phone_number` ThreeDSCardholderPhoneNumber
        - `country_code` string, nullable
        - `number` string, nullable
      - `work_phone_number` ThreeDSCardholderPhoneNumber
        - `country_code` string, nullable
        - `number` string, nullable
      - `billing_shipping_address_match` string, nullable
      - `billing_address` ThreeDSAddress
        - `line1` string, nullable
        - `line2` string, nullable
        - `line3` string, nullable
        - `postal_code` string, nullable
        - `city` string, nullable
        - `state_code` string, nullable
        - `country_code` string, nullable
      - `shipping_address` ThreeDSAddress
        - `line1` string, nullable
        - `line2` string, nullable
        - `line3` string, nullable
        - `postal_code` string, nullable
        - `city` string, nullable
        - `state_code` string, nullable
        - `country_code` string, nullable
    - `broadcast_info` unknown
    - `message_extensions` ThreeDSMessageExtension[], nullable
      - `id` string, nullable
      - `name` string, nullable
      - `critical` boolean, nullable
      - `data` unknown
    - `metadata` object, nullable
  - `callback_urls` ThreeDSCallbackUrls
    - `success` string, nullable
    - `failure` string, nullable
    - `branding` ThreeDSBrandingOptions
      - `hide_basis_theory_branding` boolean
  - `metadata` object, nullable

## Response `201`

Created

- CreateThreeDSSessionResponse
  - `id` string, uuid
  - `type` string, nullable
  - `cardBrand` string, nullable
  - `additional_card_brands` string[], nullable
  - `method_url` string, nullable
  - `method_notification_url` string, nullable
  - `directory_server_id` string, nullable
  - `recommended_version` string, nullable
  - `redirect_url` string, nullable
  - `metadata` object, nullable

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden

---

[API](https://skmtc.net/basistheory/apis/basis-theory-api.md) · [All operations](https://skmtc.net/basistheory/apis/basis-theory-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/basistheory/basis-theory-api/revisions/cbb8e098b560/schema)
