Webhooks
5 min
boom sends real time webhook notifications to your server when key events occur in boomreport (rent reporting) and boomscreen (tenant screening) use webhooks to keep your systems in sync — for example, updating a tenant's status when their enrollment is approved, or triggering an internal workflow when a screening application is submitted how it works all webhooks are sent as post requests with content type application/json every payload includes an event field identifying the event type, plus a unique request id if your server returns a non 2xx status or is unreachable, we retry 2 times at 1 minute intervals webhook urls are configured per partner — contact support to set your url for production and sandbox environments authenticating webhooks each webhook request can include an x api key header with the secret token configured for your webhook endpoint validate this token on your server to verify the request is from boom every message contains an event parameter describing its type other fields depend on type contact support to set your webhook url for boomreport (rent reporting) production and sandbox environments currently supported events boom report events event description customer registered sent when a customer is created in boom (via api or partner portal) the customer has provided name, phone, and email but has not yet started enrollment payload { "event" "customer registered", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123" } enrollment pending the customer completed their enrollment application identity, lease, and landlord verifications are now in progress payload { "event" "enrollment pending", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456", } enrollment approved all verifications passed and the enrollment is active rent payments will be reported to credit bureaus going forward payload { "event" "enrollment approved", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456" } enrollment rejected the enrollment was rejected due to a failed verification (identity, lease, or landlord) the customer will not be reported payload { "event" "enrollment rejected", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456" } customer unenrolled the customer was unenrolled from rent reporting can be customer initiated, partner initiated, or system initiated (45 day verification timeout) check the reason field for system initiated unenrollments unenrollment reasons identity verification pending identity verification was not completed within 45 days identity verification rejected identity verification was rejected lease not uploaded lease document was not uploaded within 45 days lease rejected lease document was rejected during verification landlord pending landlord verification was not completed within 45 days landlord rejected landlord verification was rejected (absent) manual unenrollment (customer or partner initiated) — reason field is omitted payload { "event" "customer unenrolled", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456", "reasons" \["identity verification pending"] } furnishment finished a rent payment was reported to a credit bureau for a specific month sent once per bureau per reporting cycle includes bureau name and rental verification details with the reported month and status payload { "event" "furnishment finished", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456", "bureau" "experian", "rental verification" { "id" "rv ghi012", "for month" "2026 03 01", "status" "pending confirmation", "months delinquency" 0 } } issue pending an issue was detected with the enrollment that requires customer action (e g , failed bank verification, lease mismatch) the customer has been notified payload { "event" "issue pending", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456", "slug" "bank verification failed", "title" "bank verification failed", "description" "we were unable to verify your bank account please reconnect your bank " } issue resolved a previously pending issue was resolved by the customer the enrollment is back on track payload { "event" "issue resolved", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456", "slug" "bank verification failed", "title" "bank verification failed", "description" "we were unable to verify your bank account please reconnect your bank " } rental payment verified a monthly rent payment was verified includes transaction details showing the matched bank transactions payload { "event" "rental payment verified", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456", "rental verification id" "rv ghi012", "for month" "2026 03 01", "transactions" \[ { "name" "rent payment", "amount" 150000, "source" "plaid", "external id" "txn abc123" } ] } note amount is in cents (e g , 150000 = $1,500 00) enrollment verification verified an enrollment verification step (identity, lease, or landlord) was approved the kind field indicates which verification type kind identity, lease, landlord review method automatic, manual payload { "event" "enrollment verification verified", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456", "verification id" "ver jkl012", "kind" "lease", "memo" "", "review method" "automatic" } enrollment verification rejected an enrollment verification step was rejected the kind field indicates which type, and memo may contain additional context kind identity, lease, landlord review method automatic, manual payload { "event" "enrollment verification rejected", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456", "verification id" "ver jkl012", "kind" "lease", "memo" "", "review method" "automatic" } enrollment moved out the customer was marked as moved out of their rental unit reporting will stop for this enrollment payload { "event" "enrollment moved out", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "enrollment id" "enr def456" } boomreport plaid link visited sent when the customer visits the generated plaid bank linking url payload { "event" "boomreport plaid link visited", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "customer id" "cust abc123", "customer first name" "jane", "customer last name" "doe", "customer email" "jane\@example com", "customer phone" "15551234567", "customer created at" "2026 01 15t10 30 00z" } boomreport plaid link requested sent when the customer clicks "copy" or "request" on their plaid bank linking url payload { "event" "boomreport plaid link requested", "request id" "a1b2c3d4 e5f6 7890 abcd ef1234567890", "plaid connect url" "https //cdn plaid com/link/v2/ ", "customer id" "cust abc123", "customer first name" "jane", "customer last name" "doe", "customer email" "jane\@example com", "customer phone" "15551234567", "customer created at" "2026 01 15t10 30 00z" } boom screen events event description other fields application approved emitted in case application is approved event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id application conditionally approved emitted in case application is conditionally approved event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id application canceled emitted in case application is canceled event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id application declined emitted in case application is declined event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id applicant submitted emitted in case applicant submitted event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id applicant started emitted in case applicant started event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id application submitted emitted in case application is submitted event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id application updated emitted in case application is updated event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id application started emitted in case application is started event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id applicant created (deprecated) emitted in case applicant created event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id application created (deprecated) emitted in case application created event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at applicant completed (deprecated) emitted in case applicant completed the application event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id application completed (deprecated) emitted in case application is completed event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id application merged emittedin case applications are merged event target application id target application url merged application ids merged at merged by identity verification finished when a lead or an applicant finish identity verification event status lead id first name last name email phone identity verification finished external customer id created at updated at application status applicant id application id role finished at identity verification expired when an identity verification expires (30 days since it last finished) event status lead id first name last name email phone identity verification finished external customer id created at updated at application status applicant id application id role finished at push applicants to property management system when applicants are pushed to property management system event dependents pets first name last name phone email desired move in date unit address monthly rent amount status created at application updated at external id pms push status error message applicant invite followup triggered after configurable delay when an invited applicant hasn't started their application event lead id invited lead inviting applicant dependents pets applicants desired move in date unit unit object property monthly rent amount status portal url id reasons created at application updated at external id applicant identity followup triggered after configurable delay when an applicant hasn't completed identity verification event lead id invited lead inviting applicant dependents pets applicants desired move in date unit unit object property monthly rent amount status portal url id reasons created at application updated at external id applicant income followup triggered after configurable delay when an applicant hasn't completed income verification event lead id invited lead inviting applicant dependents pets applicants desired move in date unit unit object property monthly rent amount status portal url id reasons created at application updated at external id applicant checkout followup triggered after configurable delay when an applicant finished verifications but hasn't submitted event lead id invited lead inviting applicant dependents pets applicants desired move in date unit unit object property monthly rent amount status portal url id reasons created at application updated at external id pet screening requested triggered when a pet screening is requested for an applicant event lead id invited lead inviting applicant dependents pets applicants desired move in date unit unit object property monthly rent amount status portal url id reasons created at application updated at external id application under review triggered when a group application is submitted and enters review status event lead id invited lead inviting applicant dependents pets applicants desired move in date unit unit object property monthly rent amount status portal url id reasons created at application updated at external id applicant receipt triggered when the application fee payment receipt email is sent event lead id invited lead inviting applicant dependents pets applicants desired move in date unit unit object property monthly rent amount status portal url id reasons created at application updated at external id application decision reverted triggered when an application decision is reversed/undone event lead id invited lead inviting applicant dependents pets applicants desired move in date unit unit object property monthly rent amount status portal url id reasons created at application updated at external id
