Chapter 3

Pre-authorization

GENERATE PRE-AUTHORIZATION REQUEST

  • Endpoint: POST /v1/preauthorizations
  • Description: Submits a new pre-authorization request.

Headers:

Header Value
Authorization Bearer <TOKEN>

Request Body:

The request body must be a JSON object containing the pre-authorization details.

Example Request:

  curl -X POST \
    'https://your-api-domain/v1/preauthorizations' \
    -H 'Authorization: Bearer <YOUR_TOKEN>' \
    -H 'Content-Type: application/json' \
    -d '{
          "authorization_no": "ATI-2025-000002",
          "member_phone": "255712345678",
          "medical_condition": "Requires urgent surgery and hospitalization.",
          "provider_note": "Patient admitted for observation.",
          "diagnosis": [
            { "code": "O89.6", "type": "Principal" },
            { "code": "N39.0", "type": "Secondary" },
            { "code": "K20", "type": "Secondary" }
          ],
         "breakup": [
                { "id": "648184", "type": "medication", "quantity": 1, "amount": 16500 },
                { "id": "648137", "type": "medication", "quantity": 1, "amount": 17600 },
                { "id": "417028", "type": "investigation", "quantity": 1, "amount": 5000 },
                { "id": "462323", "type": "investigation", "quantity": 1, "amount": 300000 },
                { "id": "647946", "type": "medication", "quantity": 1, "amount": 600 },
                { "id": "647948", "type": "medication", "quantity": 1, "amount": 9000 }
         ]
      }'

Example Success Response (200 OK):

  {
    "success": true,
    "statusCode": 200,
    "message": [
      "Pre-authorization submitted successfully"
    ],
    "data": {
      "uuid": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
      "pre_authorization_no": "PA-25-000001",
      "authorization_no": "ATI-2025-000002",
      "request_amount": 150000
    }
  }

Example Error Response (422 Unprocessable Entry):

  {
    "success": false,
    "statusCode": 422,
    "message": [
      "Invalid authorization number"
    ],
    "data": null
  }

UPDATE PRE-AUTHORIZATION REQUEST

  • Endpoint: PATCH /v1/preauthorizations
  • Description: Updates an existing pre-authorization request. This action creates a new version of the pre-authorization with an incremented suffix (e.g., -1, -2).

URL Parameters:

Parameter Type Description

Headers:

Header Value
Authorization Bearer <TOKEN>

Request Body:

The request body must be a JSON object containing the full pre-authorization details with pre_authorization_no .

Example Request:

  curl -X PATCH \
    'https://your-api-domain/v1/preauthorizations' \
    -H 'Authorization: Bearer <YOUR_TOKEN>' \
    -H 'Content-Type: application/json' \
    -d '{
          "authorization_no": "ATI-2025-000002",
          "member_phone": "255712345679",
          "medical_condition": "Suspected appendicitis, requires surgery and extended observation.",
          "diagnosis": [
            { "code": "O89.6", "type": "Principal" },
            { "code": "N39.0", "type": "Secondary" },
            { "code": "K20", "type": "Secondary" }
          ],
         "breakup": [
                { "id": "648184", "type": "medication", "quantity": 1, "amount": 16500 },
                { "id": "648137", "type": "medication", "quantity": 1, "amount": 17600 },
                { "id": "417028", "type": "investigation", "quantity": 1, "amount": 5000 },
                { "id": "462323", "type": "investigation", "quantity": 1, "amount": 300000 },
                { "id": "647946", "type": "medication", "quantity": 2, "amount": 600 },
                { "id": "647948", "type": "medication", "quantity": 5, "amount": 9000 }
         ]
      }'

Example Success Response (200 OK):

  {
    "success": true,
    "statusCode": 200,
    "message": [
      "Pre-authorization updated successfully"
    ],
    "data": {
      "uuid": "k1l2m3n4-o5p6-7890-1234-567890abcdef",
      "pre_authorization_no": "PA-25-000001-1",
      "authorization_no": "ATI-2025-000002",
      "request_amount": 225000
    }
  }

GET PRE-AUTHORIZATION REQUEST STATUS

  • Endpoint: GET /v1/preauthorizations/{pre_authorization_no}
  • Description: Retrieves the current status of a specific pre-authorization request, including approval details and amounts.

URL Parameters:

Parameter Type Description
pre_authorization_no string The pre-authorization number to check.

Headers:

Header Value
Authorization Bearer <TOKEN>

Example Request:

  curl -X GET \
    'https://your-api-domain/v1/preauthorizations/PA-25-000001' \
    -H 'Authorization: Bearer <YOUR_TOKEN>'

Example Success Response (200 OK):

  {
    "success": true,
    "statusCode": 200,
    "message": [
      "Pre Authorization Status"
    ],
    "data": {
      "uuid": "f1g2h3i4-j5k6-7890-1234-567890abcdef",
      "pre_authorization_no": "PA-25-000001",
      "authorization_no": "ATI-2025-000002",
      "member_id": "MEM-001",
      "member_name": "Jane Doe",
      "request_amount": 225000,
      "approved_amount": 210000,
      "status": "APPROVED",
      "breakup": [
          { "id": "648184", "type": "Drug", "activity_name": "PARACETAMOL IV 1GM\/100ML - DRUGS ( 16500 TZS )", "requested_quantity": "1", "requested_price": "16500.0000", "approved_quantity": "1", "denied_reason": "", "approved_price": "16500.0000", "status": "Approved" },
          { "id": "648137", "type": "Drug", "activity_name": "LACTULOSE 100ML(DUPHALAC) SOLUTION - DRUGS ( 1", "requested_quantity": "1", "requested_price": "17600.0000", "approved_quantity": "1", "denied_reason": "", "approved_price": "17600.0000", "status": "Approved" },
          { "id": "417028", "type": "Service Code", "activity_name": "AST", "requested_quantity": "1", "requested_price": "5000.0000", "approved_quantity": "1", "denied_reason": "Claim overlaps inpatient stay. Resubmit only those services rendered outside the inpatient stay", "approved_price": ".0000", "status": "Approved" },
          { "id": "462323", "type": "Service Code", "activity_name": "NORMAL DERIVERY", "requested_quantity": "1", "requested_price": "300000.0000", "approved_quantity": "1", "denied_reason": "", "approved_price": "300000.0000", "status": "Approved" },
          { "id": "647946", "type": "Drug", "activity_name": "ACECLOFENAC (ZERODOL) 100MG - DRUGS ( 600 TZS )", "requested_quantity": "1", "requested_price": "600.0000", "approved_quantity": "1", "denied_reason": "", "approved_price": "600.0000", "status": "Approved" },
          { "id": "647948", "type": "Drug", "activity_name": "ACYCLOVIR CREAM 10MG - DRUGS ( 9000 TZS )", "requested_quantity": "1", "requested_price": "9000.0000", "approved_quantity": "1", "denied_reason": "Claim overlaps inpatient stay. Resubmit only those services rendered outside the inpatient stay", "approved_price": ".0000", "status": "Approved" },
          { "id": "647949", "type": "Drug", "activity_name": "ACYCLOVIR TAB 200MG - DRUGS ( 320 TZS )", "requested_quantity": "1", "requested_price": "320.0000", "approved_quantity": "1", "denied_reason": "", "approved_price": "320.0000", "status": "Approved" },
          { "id": "647950", "type": "Drug", "activity_name": "ADRENALINE 1MG INJECTION - DRUGS ( 6000 TZS )", "requested_quantity": "1", "requested_price": "6000.0000", "approved_quantity": "1", "denied_reason": "", "approved_price": "6000.0000", "status": "Approved" },
          { "id": "647951", "type": "Drug", "activity_name": "ALBENDAZOLE 20ML \/ 100MG SUSPENSION - DRUGS ( 3500", "requested_quantity": "1", "requested_price": "3500.0000", "approved_quantity": "1", "denied_reason": "", "approved_price": "3500.0000", "status": "Approved" }
      ]
    }
  }

Example Error Response (404 Not Found):

  {
    "success": false,
    "statusCode": 404,
    "message": [
      "Pre Authorization not found"
    ],
    "data": null
  }

UPLOAD PRE-AUTHORIZATION ATTACHMENT DOCUMENT

  • Endpoint: POST /v1/preauthorizations/doc
  • Description: Upload pre-authorization attachment document.

Request Body Parameters:

Parameter Type Description
pre_authorization_no string The pre-authorization number.
attachment string file in base64 string

Headers:

Header Value
Authorization Bearer <TOKEN>

Example Request:

  curl -X POST \
    'https://your-api-domain/v1/preauthorizations/doc' \
    -H 'Authorization: Bearer <YOUR_TOKEN>' \
    -H 'Content-Type: application/json' \
    -d '{
          "pre_authorization_no": "PA-25-000001",
      "attachment": "data:image\/jpg;base64,\/9j\/4AAQSkZJRgABAQEAyADIAAD...................."
       }'

Example Success Response (200 OK):

  {
    "success": true,
    "statusCode": 200,
    "message": [
      "Document uploaded successful"
    ],
    "data": null
  }

Example Error Response (404 Not Found):

  {
    "success": false,
    "statusCode": 404,
    "message": [
      "Pre Authorization not found"
    ],
    "data": null
  }