GET
/
api
/
underwriting
/
case
/
{business_uuid}
Check UW Status
curl --request GET \
  --url https://monitoring.safeturf.ai/api/underwriting/case/{business_uuid} \
  --header 'Authorization: Bearer <token>'
{
  "case.buw_case_uuid": "<string>",
  "case.case_number": 123,
  "case.business_uuid": "<string>",
  "case.business_name": "<string>",
  "case.uw_status_id": "<string>",
  "case.assigned_to": "<string>",
  "case.created_at": "<string>",
  "case.note": "<string>",
  "case.integration_requests": [
    {
      "source_id": "<string>",
      "source_name": "<string>",
      "request_status_id": "<string>",
      "has_response": true,
      "response_summary": "<string>"
    }
  ],
  "case.tasks": [
    {
      "task_type_id": "<string>",
      "task_name": "<string>",
      "task_status_id": "<string>",
      "due_date": "<string>",
      "priority": "<string>"
    }
  ]
}

Overview

After submitting a dealer via the Dealer Import endpoint, use this endpoint to check the current underwriting status and see the results of all verification services that have run.

Authentication

Every request must include a Bearer token in the Authorization header:
Authorization: Bearer <your_api_token>

Path Parameters

business_uuid
string
required
The Safeturf internal UUID for the business. Use GET /api/ftpos/business/{merchant_id} to look up the UUID after import (see Look Up Business UUID).

Example Request

curl -X GET "https://api.safeturf.com/api/underwriting/case/b3f1c2a4-91de-4e7c-a823-5f6d84c2e001" \
  -H "Authorization: Bearer <your_api_token>"

Response

{
  "case": {
    "buw_case_uuid": "case-uuid-here",
    "case_number": 12345,
    "business_uuid": "b3f1c2a4-91de-4e7c-a823-5f6d84c2e001",
    "business_name": "Acme Solar LLC",
    "uw_status_id": "IN_REVIEW",
    "assigned_to": "underwriter@safeturf.com",
    "created_at": "2025-01-10T10:00:00Z",
    "start_date": "2025-01-10",
    "end_date": null,
    "note": "Pending document review",
    "integration_requests": [
      {
        "integration_request_uuid": "req-123-uuid",
        "source_id": "MIDDESK",
        "source_name": "Middesk Business Verification",
        "request_status_id": "COMPLETED",
        "created_at": "2025-01-10T10:05:00Z",
        "workflow_id": "workflow-123",
        "has_response": true,
        "response_summary": "Verified - 2 warnings"
      }
    ],
    "tasks": [
      {
        "task_uuid": "task-001",
        "task_type_id": "DOC_REQUEST",
        "task_name": "Submit bank statements",
        "task_status_id": "Active",
        "due_date": "2025-01-17",
        "priority": "HIGH",
        "assignee": "underwriter@safeturf.com",
        "created_at": "2025-01-10T10:00:00Z"
      }
    ]
  }
}

Response Fields — case

case.buw_case_uuid
string
UUID of this underwriting case.
case.case_number
integer
Human-readable sequential case number.
case.business_uuid
string
UUID of the business this case belongs to.
case.business_name
string
Legal name of the business.
case.uw_status_id
string
Current underwriting status. Common values: SUBMITTED, IN_REVIEW, APPROVED, DECLINED, ON_HOLD.
case.assigned_to
string
Email of the assigned underwriter, if any.
case.created_at
string
ISO 8601 timestamp when the case was created.
case.note
string
Note on the case from the underwriting team, if any.
case.integration_requests
array
List of verification service requests that have been made for this case (Middesk, Verdata, Socure, etc.).
case.tasks
array
Open tasks for this case (e.g. document requests, manual review items).

Error Responses

StatusMeaning
401Missing or invalid Bearer token
404No underwriting case found for this business_uuid
500Internal error — contact Safeturf support

Notes

  • If the case hasn’t been created yet (verification not triggered), this returns 404. Use Trigger Verification to start it.
  • uw_status_id is the primary field to poll. Once it reaches APPROVED or DECLINED, the process is complete.
  • integration_requests grows as each verification service completes — you’ll see it populated progressively.