Skip to main content

Overview

The /v1/us-kyb/reports endpoint lets you generate a KYB report for a US business from a business name and structured address. Reports are generated asynchronously. Create a report request, poll /v1/us-kyb/reports/{request_id} until it completes, then read the structured report payload and pdf_url. Completed reports can include:
  • IRS and tax-ID matching
  • Secretary of State records
  • address and physical-presence signals
  • officers and watchlist context
  • web and social presence
  • operating-status and business-consistency signals
Use the JSON response for application logic, and pdf_url when you need a rendered report for analyst review.

Full Example Report

{
  "request_id": "ecd7e4fc-54ee-40a9-819b-dac94a8d26ea",
  "status": "completed",
  "created_at": "2026-03-09T23:43:01.956609+00:00",
  "completed_at": "2026-03-09T23:44:07.955586+00:00",
  "report": {
    "report": {
      "business_status": "Not Verified",
      "last_updated": "03/09/2026 at 11:44PM UTC"
    },
    "scores": {
      "fraud_safety_score": 0,
      "loan_approval_score": 0,
      "reprompt_validation_score": 0
    },
    "submitted_information": {
      "business_name": {
        "value": "Connex Solutions LLC",
        "status": "Not Verified"
      },
      "tax_id": {
        "value": "Not Provided",
        "status": "Inconclusive"
      },
      "office_address": {
        "value": "4015 Travis Dr Ste 211, Nashville, TN 37211-3742, US",
        "status": "Inconclusive"
      }
    },
    "business_information": {
      "formation_state": "TN (UNVERIFIED)",
      "formation_date": "NOT_PROVIDED",
      "formation_date_relative": "NOT_PROVIDED",
      "entity_type": "NOT_PROVIDED",
      "tax_id": "Not Provided",
      "tax_id_status": "N/A",
      "tax_id_name_match": "Not Provided",
      "tax_id_name_match_status": "N/A"
    },
    "sos": {
      "status_counts": {
        "ACTIVE": 0,
        "INACTIVE": 1,
        "UNKNOWN": 0
      },
      "states": ["Inconclusive"],
      "secretary_of_state": [
        {
          "filing_id": "INCONCLUSIVE",
          "business_name": "Connex Solutions LLC",
          "jurisdiction": "Inconclusive",
          "status": "Inactive",
          "sub_status": "Foreign",
          "status_details": "Inconclusive",
          "address": "4015 Travis Dr Ste 211, Nashville, TN 37211-3742, US",
          "filed_date": "NOT_PROVIDED",
          "filed_relative": "NOT_PROVIDED",
          "entity_type": "NOT_PROVIDED",
          "source_url": "https://tnbear.tn.gov/Ecommerce/FilingSearch.aspx",
          "detailed_info": {
            "Formation Date": "NOT_PROVIDED",
            "Formation State": "TN (UNVERIFIED)",
            "Entity Type": "NOT_PROVIDED"
          },
          "registered_agent_name": "Not Provided",
          "registered_agent_lines": [
            "Not Provided"
          ],
          "principal_office_address": [
            "4015 Travis Dr Ste 211, Nashville, TN 37211-3742, US"
          ],
          "mailing_address": [
            "4015 Travis Dr Ste 211, Nashville, TN 37211-3742, US"
          ]
        }
      ]
    },
    "insights": {
      "office_address": { "status": "INCONCLUSIVE" },
      "watchlist": { "status": "INCONCLUSIVE" },
      "sos": { "status": "UNVERIFIED" },
      "tin_match": { "status": "INCONCLUSIVE" },
      "formation_state": { "status": "VERIFIED" }
    },
    "business_names": [
      { "name": "Connex Solutions LLC" }
    ],
    "online_presence": {
      "websites": [
        { "domain": "not_provided", "status": "Active" }
      ]
    },
    "office_addresses": [
      {
        "address": "4015 Travis Dr Ste 211, Nashville, TN 37211-3742, US"
      }
    ],
    "people": [
      { "name": "Unable to identify confirmed person", "roles": ["Unverified"] }
    ]
  },
  "pdf_url": "https://reprompt1.s3.amazonaws.com/kyb-agent-reports/connex-solutions-llc/20260309_234302/connex-solutions-llc_20260309_234302.pdf"
}

Start a Report

POST /v1/us-kyb/reports

ParameterTypeRequiredDescription
business_namestringYesLegal or trading name of the business
addressobjectYesStructured US address
submitted_by_namestringNoName of the person requesting the report
tin.numberstringNoEIN or other tax ID
streambooleanNoOptional stream metadata flag
curl -X POST "https://api.reprompt.io/v1/us-kyb/reports" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "business_name": "Connex Solutions LLC",
    "submitted_by_name": "Alex Analyst",
    "address": {
      "address_line1": "4015 Travis Dr Ste 211",
      "city": "Nashville",
      "state": "TN",
      "postal_code": "37211-3742",
      "country_code": "US"
    },
    "tin": {
      "number": "33-3059213"
    }
  }'
{
  "request_id": "ecd7e4fc-54ee-40a9-819b-dac94a8d26ea",
  "status": "processing",
  "poll_url": "/v1/us-kyb/reports/ecd7e4fc-54ee-40a9-819b-dac94a8d26ea",
  "stream": null
}
Use request_id to poll for results.

Poll for Results

GET /v1/us-kyb/reports/

curl "https://api.reprompt.io/v1/us-kyb/reports/ecd7e4fc-54ee-40a9-819b-dac94a8d26ea" \
  -H "Authorization: Bearer YOUR_API_KEY"
The response shape depends on the status field: processing, completed, or error. When status is completed, the response includes the full report object and a pdf_url pointing at the generated PDF in S3. Completed responses remain available for later polling. In production, I verified the same completed request still returned 200 more than 5 minutes after completion.

What the Report Covers

Each completed report returns a report object that may include sections like:
SectionWhat It Tells You
reportBusiness status and last-updated timestamp
scoresReprompt-generated scoring outputs
submitted_informationSubmitted business name, tax ID, and office address with verification status
business_informationEntity-level attributes like formation state, entity type, and tax-ID fields
sosSecretary of State search results, status counts, and filing records when found
insightsPer-section rollups for SOS, address, watchlist, TIN, and formation-state checks
business_namesKnown legal or alternate names
online_presenceWebsite and social signals when available
office_addressesAddress records returned by the report pipeline
peopleOfficer or principal names when identified
The exact fields present in report can vary by business, source coverage, and confidence level. Use defensive parsing rather than assuming every section or field will always be populated.

Report Sections in Detail

Report

FieldTypeDescription
business_statusstringTop-level business verification outcome
last_updatedstringTimestamp string generated by the report pipeline

Scores

Live reports currently include score objects such as:
FieldTypeDescription
fraud_safety_scoreintegerReprompt-generated fraud or safety score
loan_approval_scoreintegerReprompt-generated loan-approval-oriented score
reprompt_validation_scoreintegerReprompt validation/confidence score
Score keys may change over time as the report schema evolves. Prefer checking for keys before assuming a fixed score set.

Submitted Information

FieldTypeDescription
business_nameobject{ "value": string, "status": string }
tax_idobject{ "value": string, "status": string }
office_addressobject{ "value": string, "status": string }

Business Information

These fields are source-dependent and may contain verified values, placeholders, or inconclusive values:
FieldTypeDescription
formation_statestringState where the entity appears to have formed
formation_datestringFormation date when available
formation_date_relativestringRelative representation of formation date
entity_typestringEntity type when available
tax_idstringTax identification number or placeholder
tax_id_statusstringTax-ID verification status
tax_id_name_matchstringBusiness name associated with the TIN
tax_id_name_match_statusstringTIN/name match status

SOS (Secretary of State)

FieldTypeDescription
status_countsobjectCounts across ACTIVE, INACTIVE, and UNKNOWN results
statesstring[]States or state-summary strings returned by the search
secretary_of_statearrayFiling or search records when available
Each filing record may include:
FieldTypeDescription
filing_idstringState filing ID or placeholder
business_namestringName as returned by the registry/source
jurisdictionstringDomestic, foreign, or inconclusive
statusstringActive, inactive, or equivalent source status
sub_statusstringAdditional status detail
status_detailsstringMore status context from the source
addressstringAddress on file
filed_datestringFiling date or placeholder
filed_relativestringRelative representation of the filing date
entity_typestringEntity type from the source
source_urlstringLink to the source registry or search page
detailed_infoobjectAdditional source-specific metadata
registered_agent_namestringRegistered agent name when available
registered_agent_linesstring[]Registered agent address lines
principal_office_addressstring[]Principal office address lines
mailing_addressstring[]Mailing address lines

Insights

Per-section status rollups. Each key maps to { "status": string }. Common keys include:
KeyExample Status Values
sosUNVERIFIED, Submitted Active
tin_matchINCONCLUSIVE, Found
formation_stateVERIFIED, Found
office_addressINCONCLUSIVE, Verified, Failure
peopleVerified, Unverified
watchlistINCONCLUSIVE, Verified
business_nameVerified, Not Verified

Business Names

Array of { "name": string } objects for legal names, alternate names, or DBAs when found.

Online Presence

FieldTypeDescription
websitesarray{ "domain": string, "status": string }
social_profilesarray{ "platform": string, "name": string } when available

Office Addresses

Array of address objects. Some reports include only address; others may also include boolean flags.
FieldTypeDescription
addressstringFull address
is_residentialbooleanPresent when residential classification is available
is_deliverablebooleanPresent when deliverability is available

People

Array of person objects:
FieldTypeDescription
namestringFull name or placeholder
rolesstring[]Roles such as officer, principal, or unverified

Error Response

{
  "request_id": "ecd7e4fc-54ee-40a9-819b-dac94a8d26ea",
  "status": "error",
  "created_at": "2026-03-09T23:43:01.956609+00:00",
  "error_at": "2026-03-09T23:44:07.955586+00:00",
  "error": {
    "code": "KYB_PROCESSING_FAILED",
    "message": "KYB generation failed."
  }
}

Office Addresses

Array of address objects:
FieldTypeDescription
addressstringFull address
is_residentialbooleantrue if residential, false if commercial (omitted if unknown)
is_deliverablebooleantrue if USPS deliverable (omitted if unknown)

People

Array of person objects:
FieldTypeDescription
namestringFull name
rolesstring[]Roles (e.g. Primary Officer, Secondary Officer)

Error Response

{
  "status": "error",
  "report_id": "rpt_9x8c7d6e5f4a",
  "created_at": "2026-02-23T10:30:00Z",
  "error_at": "2026-02-23T10:31:12Z",
  "business_name": "Nonexistent Corp",
  "business_address": "123 Fake St, Nowhere, XX 00000",
  "error": "Unable to verify business entity. No matching records found in any data source."
}