Pave Bank
RFI

Respond to RFI Question

Submit a response to an RFI question.

Example Request

curl -X POST "https://api.pavebank.com/v1/rfis/:rfiID/questions/:questionID/responses" \
  --header "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  --data '{
    "question_type": "<QUESTION_TYPE>",
    <QUESTION_TYPE>: {
        "response_text": "This is the response text to the question.",
	    "document_ids": ["<DOCUMENT_ID_1>", "<DOCUMENT_ID_2>"],
    }
  }'

Example Response

Each response follows a structured format with the response data nested under a key matching the question type:

  • id: The RFI response identifier
  • question_id: The question ID being responded to
  • responder_type: Type of responder (customer or staff)
  • response: Object containing the question-type-specific response data
  • created_at: Timestamp when the response was created
  • updated_at: Timestamp when the response was last updated
{
    "id": "<RFI_RESPONSE_ID>",
    "question_id": "<RFI_QUESTION_ID>",
    "responder_type": "customer",
    "response": {
        "identification.individual.passport": {
            "response_text": "Passport document attached",
            "document_ids": [
                "<DOCUMENT_ID_1>",
                "<DOCUMENT_ID_2>"
            ]
        }
    },
    "created_at": "2025-11-04T12:19:47.541039Z",
    "updated_at": "2025-11-04T12:19:47.541039Z"
}
POST
/v1/rfis/{rfiID}/questions/{questionID}/responses

Authorization

AuthorizationRequiredBearer <token>

Enter your token in the format: Bearer {token}

In: header

Request Body

application/jsonOptional
question_typeRequiredstring

The type of RFI question

Value in: "identification.individual.passport" | "identification.individual.national_id" | "identification.individual.proof_of_address" | "identification.individual.residence_permit" | "identification.individual.corrected_address" | "identification.legal_entity.business_registry" | "identification.legal_entity.ubo_documentation" | "identification.legal_entity.ubo_passports" | "identification.legal_entity.authorised_person_passport" | "kyc_kyb.confirm_kyc_details" | "kyc_kyb.confirm_kyb_details" | "kyc_kyb.onboarding_date_method" | "kyc_kyb.internal_risk_rating" | "business.individual.occupation" | "business.legal_entity.description" | "business.legal_entity.industry_classification" | "business.legal_entity.website_urls" | "transaction.purpose" | "transaction.supporting_document" | "transaction.counterparty_info" | "sof.document" | "sof.explanation" | "sow.document" | "sow.explanation" | "pattern.expected_monthly_turnover" | "pattern.expected_volume_frequency" | "pattern.explain_unusual_activity.spike_in_activity" | "pattern.explain_unusual_activity.drop_in_activity" | "pattern.explain_unusual_activity.unexpected_counterparty" | "pattern.explain_unusual_activity.unexpected_jurisdiction" | "pattern.explain_unusual_activity.volume_exceeds_expected" | "pattern.explain_unusual_activity.dormant_now_active" | "pattern.explain_unusual_activity.pattern_unusual" | "pattern.explain_unusual_activity.other" | "other.additional_explanation" | "other.supporting_evidence"
identification.individual.passportobject
identification.individual.national_idobject
identification.individual.proof_of_addressobject
identification.individual.residence_permitobject
identification.individual.corrected_addressobject
identification.legal_entity.business_registryobject
identification.legal_entity.ubo_documentationobject
identification.legal_entity.ubo_passportsobject
identification.legal_entity.authorised_person_passportobject
kyc_kyb.confirm_kyc_detailsobject
kyc_kyb.confirm_kyb_detailsobject
kyc_kyb.onboarding_date_methodobject
kyc_kyb.internal_risk_ratingobject
business.individual.occupationobject
business.legal_entity.descriptionobject
business.legal_entity.industry_classificationobject
business.legal_entity.website_urlsobject
transaction.purposeobject
transaction.supporting_documentobject
transaction.counterparty_infoobject
sof.documentobject
sof.explanationobject
sow.documentobject
sow.explanationobject
pattern.expected_monthly_turnoverobject
pattern.expected_volume_frequencyobject
pattern.explain_unusual_activity.spike_in_activityobject
pattern.explain_unusual_activity.drop_in_activityobject
pattern.explain_unusual_activity.unexpected_counterpartyobject
pattern.explain_unusual_activity.unexpected_jurisdictionobject
pattern.explain_unusual_activity.volume_exceeds_expectedobject
pattern.explain_unusual_activity.dormant_now_activeobject
pattern.explain_unusual_activity.pattern_unusualobject
pattern.explain_unusual_activity.otherobject
other.additional_explanationobject
other.supporting_evidenceobject

Path Parameters

rfiIDRequiredstring

The unique identifier of the RFI (Request for Information)

questionIDRequiredstring

The unique identifier of the question being responded to

Response Body

Success response

idRequiredstring

The unique identifier of the RFI response

question_idRequiredstring

The RFI question identifier

responder_typeRequiredstring

Type of responder

Value in: "customer" | "staff" | "system"
responseRequiredobject

The response data structured by question type

created_atRequiredstring

Timestamp when the response was created

Format: "date-time"
updated_atRequiredstring

Timestamp when the response was last updated

Format: "date-time"
curl -X POST "https://developer-api-staging.pavebank.dev/v1/rfis/string/questions/string/responses" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "question_type": "identification.individual.passport"
  }'
{
  "id": "string",
  "question_id": "string",
  "responder_type": "customer",
  "response": {},
  "created_at": "2019-08-24T14:15:22Z",
  "updated_at": "2019-08-24T14:15:22Z"
}