📄 Dealer Finance Document APIs

Frontend Developer Documentation

Base URL: https://your-api-domain.com/api

Authentication: Bearer token (Sanctum)

Required Role: admin

Content-Type: application/json

POST /api/dealer-finance-documents/{id}/update

1. Update Document

Update an existing dealer finance document (type and file).

Path Parameters

Name Type Required Description
id integer Yes Dealer finance document ID

Request Body (JSON)

Field Type Required Description
document_type_id integer Yes ID from dealer_finance_document_types table
document string Yes URL string or base64-encoded file (e.g., data:image/png;base64,...)

Example Request (URL)

{
  "document_type_id": 1,
  "document": "https://example.com/doc.pdf"
}

Example Request (Base64)

{
  "document_type_id": 1,
  "document": "data:application/pdf;base64,JVBERi0xLjQK..."
}

Responses

200 Success

{
  "status": "success",
  "message": "Document updated successfully",
  "data": {
    "id": 1,
    "dealer_loan_id": 5,
    "document_type_id": 1,
    "path": "https://api.sathiloan.in/...",
    "rejected": false,
    "rejection_reason": null,
    "created_at": "...",
    "updated_at": "..."
  }
}

422 Validation Error

{
  "status": "error",
  "message": "The document type id field is required."
}

404 Not Found

{
  "status": "error",
  "message": "Document not found"
}
POST /api/dealer-finance-documents/{id}/reject

2. Reject Document

Mark a dealer finance document as rejected and set the rejection reason.

Path Parameters

Name Type Required Description
id integer Yes Dealer finance document ID

Request Body (JSON)

Field Type Required Description
rejection_reason string Yes Reason for rejection

Example Request

{
  "rejection_reason": "Document is blurry. Please upload a clear copy."
}

Responses

200 Success

{
  "status": "success",
  "message": "Document rejected successfully",
  "data": {
    "id": 1,
    "dealer_loan_id": 5,
    "document_type_id": 1,
    "path": "https://...",
    "rejected": true,
    "rejection_reason": "Document is blurry. Please upload a clear copy.",
    "created_at": "...",
    "updated_at": "..."
  }
}

422 Validation Error

{
  "status": "error",
  "message": "The rejection reason field is required."
}

404 Not Found

{
  "status": "error",
  "message": "Document not found"
}
POST /api/dealer-finance-documents/{id}/approve

3. Approve Document

Mark a dealer finance document as approved (clears rejection).

Path Parameters

Name Type Required Description
id integer Yes Dealer finance document ID
Note: This endpoint requires no request body. Send empty body {} or no body.

Responses

200 Success

{
  "status": "success",
  "message": "Document approved successfully",
  "data": {
    "id": 1,
    "dealer_loan_id": 5,
    "document_type_id": 1,
    "path": "https://...",
    "rejected": false,
    "rejection_reason": null,
    "created_at": "...",
    "updated_at": "..."
  }
}

404 Not Found

{
  "status": "error",
  "message": "Document not found"
}

Quick Reference

Action Method Endpoint Body Required
Update POST