CoverageEligibilityRequest

The CoverageEligibilityRequest provides patient and insurance coverage information to an insurer for them to respond, in the form of an CoverageEligibilityResponse, with information regarding whether the stated coverage is valid and in-force.

https://hl7.org/fhir/R4/coverageeligibilityrequest.html

post
/CoverageEligibilityRequest

CoverageEligibilityRequest create

If Claim.MD is set up in your Canvas instance, a creation of a coverage CoverageEligibilityRequest will kick off a request to Claim.MD to fetch the eligibility information. Use the returned id in the response.headers[‘location’] attribute to perform a CoverageEligibilityResponse Search to see what response Claim.MD returned.

Attributes

resourceType
string

The FHIR Resource name.

status
string required

Describes the state the request is in.

Value Options Supported:
  • active
purpose
array[string] required

What information is being requested.

Supported values: only [“benefits”] is valid

patient
json required

Canvas patient resource whom the CoverageEligibilityRequest is for.

Click to view child attributes
reference
string required

The reference string of the subject in the format of "Patient/a39cafb9d1b445be95a2e2548e12a787".

type
string

Type the reference refers to (e.g. “Patient”).

created
date required

Creation date, required by the FHIR specification, but unused by Canvas as it will be defaulted to the Canvas ingestion timestamp.

Canvas recommends sending the current datetime in ISO 8601 format.

insurer
json required

Coverage issuer, required by the FHIR schema but unused by Canvas because we inherit the issuer directly from the Coverage resource provided.

Canvas recommends setting insurer to {}.

insurance
array[json] required

Patient insurance information.

Canvas requires a single coverage resource identifying the insurance to check eligibility against.

Click to view child attributes
json required

Insurance information.

Click to view child attributes
reference
string required

The reference string of the coverage in the format of "Coverage/f7663d7b-13bd-4236-843e-086306aea125".

Responses

201 Created
The server has successfully processed the request; the new resource has been created and is now ready for interaction.

Canvas returns the created resource's id as a UUID within the location header and a null response body.

Errors

400 Bad Request
The request was invalid or cannot be otherwise served. An accompanying error message will explain further.
401 Unauthorized
The request requires user authentication.
403 Forbidden
The request requires user authorization.
405 Method Not Allowed
The request performs an operation that is either not supported or allowed.
422 Unprocessable Entity
The request cannot be processed due to semantic issues or conflicts with the database state.
  • curl --request POST \
         --url 'https://fumage-example.canvasmedical.com/CoverageEligibilityRequest' \
         --header 'Authorization: Bearer <token>' \
         --header 'accept: application/json' \
         --header 'content-type: application/json' \
         --data '
    {
        "resourceType": "CoverageEligibilityRequest",
        "status": "active",
        "purpose": [
            "benefits"
        ],
        "patient": {
            "reference": "Patient/9713f5a3c8464a2587912e80bc2dd938"
        },
        "created": "2023-09-19",
        "insurer": {},
        "insurance": [
            {
                "focal": true,
                "coverage": {
                    "reference": "Coverage/743aa331-2f85-420b-ab10-8a6b7bb6a1cf"
                }
            }
        ]
    }'
    
  • import requests
    
    url = "https://fumage-example.canvasmedical.com/CoverageEligibilityRequest"
    
    payload = {
        "resourceType": "CoverageEligibilityRequest",
        "status": "active",
        "purpose": [
            "benefits"
        ],
        "patient": {
            "reference": "Patient/9713f5a3c8464a2587912e80bc2dd938"
        },
        "created": "2023-09-19",
        "insurer": {},
        "insurance": [
            {
                "focal": True,
                "coverage": {
                    "reference": "Coverage/743aa331-2f85-420b-ab10-8a6b7bb6a1cf"
                }
            }
        ]
    }
    headers = {
        "accept": "application/json",
        "Authorization": "Bearer <token>",
        "content-type": "application/json"
    }
    
    response = requests.post(url, json=payload, headers=headers)
    
    print(response.text)
    
  • null
    
  • {
      "resourceType": "OperationOutcome",
      "issue": [
        {
          "severity": "error",
          "code": "invalid",
          "details": {
            "text": "Bad request"
          }
        }
      ]
    }
    
  • {
      "resourceType": "OperationOutcome",
      "issue": [
        {
          "severity": "error",
          "code": "unknown",
          "details": {
            "text": "Authentication failed"
          }
        }
      ]
    }
    
  • {
      "resourceType": "OperationOutcome",
      "issue": [
        {
          "severity": "error",
          "code": "forbidden",
          "details": {
            "text": "Authorization failed"
          }
        }
      ]
    }
    
  • {
      "resourceType": "OperationOutcome",
      "issue": [
        {
          "severity": "error",
          "code": "not-supported",
          "details": {
            "text": "Operation is not supported"
          }
        }
      ]
    }
    
  • {
      "resourceType": "OperationOutcome",
      "issue": [
        {
          "severity": "error",
          "code": "business-rule",
          "details": {
            "text": "Unprocessable entity"
          }
        }
      ]
    }