import { getAPIHeaders } from './getAPIHeaders'; import { getDuffelAPIUrl } from './getDuffelAPIUrl'; import type { ThreeDSecureSession, Create3DSSessionPayload } from './types'; export async function create3DSSessionInDuffelAPI( clientKey: string, data: Create3DSSessionPayload, overrideDuffelAPIUrl?: string ): Promise { const response = await fetch( `${getDuffelAPIUrl(overrideDuffelAPIUrl)}/payments/three_d_secure_sessions`, { method: 'POST', headers: getAPIHeaders(clientKey), body: JSON.stringify({ data }), } ); const responseData = await response.json(); if (response.status !== 201) { throw responseData; } return responseData['data']; }