sFOX API
Sign InOpen Account
Connect API
Connect API
  • Introduction
    • Welcome
    • Getting Started
    • Resources
      • Terminology
      • Systems & Operations
      • Integration Options
    • Guides
      • End User Onboarding & KYC
        • Individuals
        • Businesses
        • Enhanced Due Diligence
  • REST API
    • REST Endpoints
    • Authentication
    • End Users
      • Create End User Account
      • Request Verification Code
      • Confirm Verification Code
      • Create User Auth Token(s)
      • Get End User(s)
      • Get EDD Requests
      • Get EDD Prompts
      • Create EDD Responses
        • Uploading Files as Responses
      • Submit Documents
      • Deactivate User
    • Payments
      • Create Bank Account (Plaid)
      • Create Bank Account
      • Get Bank Account
      • Get Plaid Processors
      • Amend Plaid Processors
      • Verify Bank Account
      • Delete Bank Account
      • Get Wire Instructions
      • Get ACH Agreement Status
      • Request ACH Onboarding
      • Get ACH Deposit Limit
    • Withdrawals
      • Confirm Withdrawal
      • Resend Confirmation Code
      • Cancel Withdrawal
    • Transfers
      • Create Transfer
      • Confirm Transfer
      • Resend Confirmation Code
      • Cancel Transfer
      • Get Transfer Permissions
      • Get Transfer History
    • Monetization
      • Create Setting
      • Update Setting
      • Delete Setting
      • Get Settings
      • Get Permissions
      • Get Monetization History
  • WebSocket API
    • Connecting
    • Authentication
    • Subscribing & Unsubscribing
    • Message Format
    • End Users
      • Onboarding
      • Balances
      • Orders
      • Trades
    • Market Data
      • Order Book
      • Trades
      • Ticker
  • Single Sign-On
    • Overview
      • IdP Initiated SSO
    • IdP Data
    • SAML Response Data
  • Errors
    • Error Codes
Powered by GitBook
On this page
  • Request
  • Body Parameters
  • Example Requests
  • Response
  1. REST API
  2. End Users

Create EDD Responses

POST

https://api.sfox.com/v1/enterprise/eddq/responses

Submit a user's responses to an EDD request.


Request

Body Parameters

Parameter
Type
Description

user_id required

string

The unique user ID of the user that you will be submitting responses for.

prompts required

string

The list of prompts applicable to the requested EDDQ.

ddq_prompt_id required

string

response required

string

The response from your end user.

optional_free_form

string

The optional response from your end user if optional_free_form = true

Example Requests

{ "user_id":"connectedd",
"prompts": {
                "1": { "response": "hello"},
                "2": { "response": "hello"},
                "3": { "response": "hello"},
                "4": { "response": "hello"},
                "5": { "response": "hello"},
                "4": { "response": "hello", "optional_free_form":"hello world"},
                "52": { "response": "id_file"},
                "53":{"response":"por_file"}}
}
{ "user_id":"connectedd",
"prompts": {
                "6": { "response": "hello"},
                "7": { "response": "hello"},
                "8": { "response": "Custody of Virtual Currency"},
                "9": { "response": "hello"},
                "10": { "response": "hello"},
                "12": { "response": "hello"},
                "13": { "response": "hello"},
                "14": { "response": "hello"},
                "15": { "response": "hello"},
                "16": { "response": "hello"},
                "17": { "response": "hello"},
                "19": { "response": "Yes"},
                "20": { "response": "No"},
                "21": { "response": "Yes", "optional_free_form":"hello world"},
                "22": { "response": "Yes"},
                "23": { "response": "Yes"},
                "24": { "response": "Yes"},
                "25": { "response": "hello world"},
                "26": { "response": "hello world"},
                "27": { "response": "Yes"},
                "28": { "response": "Yes"},
                "29": { "response": "Yes"},
                "30": { "response": "No"},
                "31": { "response": "Yes"},
                "32": { "response": "Yes"},
                "33": { "response": "Yes"},
                "34": { "response": "Yes"},
                "35": { "response": "Yes"},
                "36": { "response": "Yes"},
                "37": { "response": "Yes"},
                "38": { "response": "Yes"},
                "39": { "response": "Yes"},
                "40": { "response": "Yes"},
                "41": { "response": "Yes"},
                "42": { "response": "Yes"},
                "43": { "response": "Yes"},
                "44": { "response": "Yes"},
                "45": { "response": "Yes"},
                "46": { "response": "Yes"},
                "47": { "response": "Yes"},
                "48": { "response": "Yes"},
                "49": { "response": "Yes"},
                "50": { "response": "Yes"},
                "54": { "response": "formation_documents_file"},
                "55":{"response":"principal_place_of_business_file"}}
} 
curl -X POST \
  -H 'Content-Type: application/json' \
  -H  "Authorization: Bearer ${ENTERPRISE_API_KEY}" \
  --data '{
  "user_id": "client_e9c110e0-5b23-4fb6-8bab-8c583dbc16bc",
  "prompts": {
    "1": {
      "response": "Response to prompt ID 1"
    },
    "2": {
      "response": "Response to prompt ID 2"
    },
    "3": {
      "response": "Response to prompt ID 3"
    },
    "4": {
      "response": "Response to prompt ID 4"
    },
    "5": {
      "response": "Response to prompt ID 5"
    },
    "52": {
      "response": "sftp_test_image_filename"
    },
    "53": {
      "response": "sftp_test_pdf_filename"
    }
  }
}' \
'https://api.staging.sfox.com/v1/enterprise/eddq/responses'
const axios = require('axios');

let data = JSON.stringify({
  "user_id": "client_e9c110e0-5b23-4fb6-8bab-8c583dbc16bc",
  "prompts": {
    "1": {
      "response": "Response to prompt ID 1"
    },
    "2": {
      "response": "Response to prompt ID 2"
    },
    "3": {
      "response": "Response to prompt ID 3"
    },
    "4": {
      "response": "Response to prompt ID 4"
    },
    "5": {
      "response": "Response to prompt ID 5"
    },
    "52": {
      "response": "sftp_test_image_filename"
    },
    "53": {
      "response": "sftp_test_pdf_filename"
    }
  }
});

let config = {
  method: 'post',
  maxBodyLength: Infinity,
  url: 'https://api.staging.sfox.com/v1/enterprise/eddq/responses',
  headers: { 
    'Content-Type': 'application/json', 
    'Authorization': `Bearer ${process.env.ENTERPRISE_API_KEY}`, 
  },
  data : data
};

axios.request(config)
  .then((response) => {
    console.log(response.status);
    console.log(response.data);
  })
  .catch((error) => {
    console.log(error.response.status);
    console.log(error.response.data);
  });
import requests
import os

data = {
  "user_id": "client_e9c110e0-5b23-4fb6-8bab-8c583dbc16bc",
  "prompts": {
    "1": {
      "response": "Response to prompt ID 1"
    , "optional_free_form":"Response to optional_free_form"},
    "2": {
      "response": "Response to prompt ID 2"
    },
    "3": {
      "response": "Response to prompt ID 3"
    },
    "4": {
      "response": "Response to prompt ID 4"
    },
    "5": {
      "response": "Response to prompt ID 5"
    },
    "52": {
      "response": "sftp_test_image_filename"
    },
    "53": {
      "response": "sftp_test_pdf_filename"
    }
  }
}

response = requests.post(
    'https://api.staging.sfox.com/v1/enterprise/eddq/responses',
  headers={ 
    'Authorization': f"Bearer {os.environ['ENTERPRISE_API_KEY']}" 
  },
  json=data
)

print(response.status_code)
print(response.json())

All required prompts must be answered before responses can be submitted

For File-Upload type prompts,

  1. Submit the response as the file name excluding the extensions such as .jpg, .pdf.

Example If your user submits a file name for his Proof of Residence "por_file.png", you will need to submit the response "por_file".

Response

200: OK
All prompts
{
    "data": {
        "success": true
    }
}
PreviousGet EDD PromptsNextUploading Files as Responses

Last updated 1 day ago

.

Upload the relevant file to sFOX via the SFTP server
The unique id retrieved from the list of EDD prompts