HealNow API (1.0)

Download OpenAPI specification:Download

Introduction

Welcome to the HealNow REST API Documentation. Using this API, you can leverage our on-demand pharmacy payments platform to get your prescriptions paid and delivered easily without the hassle of changing your team's workflow.

Here is the typical flow:

  • Create a Patient. This will enable you to get started with any of the additional API's.
  • Add prescriptions to a patient's cart
  • An order is created & executed once the customer completes payment.

Request Content-Type

The Content-Type for POST and PUT requests can be set to application/x-www-form-urlencoded, multipart/form-data, or application/json.

CURL example:

You will have to replace ${apiKey} curl -H "Authorization: Bearer ${apikey}" -v https://api.healnow.io/v1/orders/${id} with your specific API key.

Authentication

ApiKey

Use "Authorization" header to send api key as Bearer token.

Security Scheme Type: API Key
Header parameter name: Authorization

Address

Address endpoints

List patient addresses

List patient address records

path Parameters
patient_id
required
string
Example: dhOK9luFA6t7Wg5I

Patient ID

query Parameters
page
integer
Example: page=2

Current pagination page

per_page
integer [ 1 .. 100 ]
Default: 20
Example: per_page=20

Pagination page size

Responses

Response samples

Content type
application/json
{
  • "page": 0,
  • "per_page": 0,
  • "total_pages": 0,
  • "data": [
    ]
}

Create patient address

Create patient address record

path Parameters
patient_id
required
string
Example: dhOK9luFA6t7Wg5I

Patient ID

Request Body schema: application/json
street
required
string

Street name/number

street2
null or string

Floor, apt, etc.

city
required
string

City

postcode
required
string

Postcode (Zip)

state
required
string

State

country_code
required
string
Default: "us"

ISO 3166-1 Country Code

Responses

Request samples

Content type
application/json
{
  • "street": "Mulholland Drive 1",
  • "street2": null,
  • "city": "Los Angeles",
  • "postcode": "90068",
  • "state": "ca",
  • "country_code": "us"
}

Response samples

Content type
application/json
{
  • "id": "O9NGaN38CR4TK3s2",
  • "street": "Mulholland Drive 1",
  • "street2": null,
  • "city": "Los Angeles",
  • "postcode": "90068",
  • "state": "ca",
  • "country_code": "us"
}

Fetch address

Fetch address record

path Parameters
address_id
required
string
Example: H4Z2WajQTJBW5aqQ

Address ID

Responses

Response samples

Content type
application/json
{
  • "id": "O9NGaN38CR4TK3s2",
  • "street": "Mulholland Drive 1",
  • "street2": null,
  • "city": "Los Angeles",
  • "postcode": "90068",
  • "state": "ca",
  • "country_code": "us"
}

Update address

Update address record

path Parameters
address_id
required
string
Example: H4Z2WajQTJBW5aqQ

Address ID

Request Body schema: application/json
street
required
string

Street name/number

street2
null or string

Floor, apt, etc.

city
required
string

City

postcode
required
string

Postcode (Zip)

state
required
string

State

country_code
required
string
Default: "us"

ISO 3166-1 Country Code

Responses

Request samples

Content type
application/json
{
  • "street": "Mulholland Drive 1",
  • "street2": null,
  • "city": "Los Angeles",
  • "postcode": "90068",
  • "state": "ca",
  • "country_code": "us"
}

Response samples

Content type
application/json
{
  • "id": "O9NGaN38CR4TK3s2",
  • "street": "Mulholland Drive 1",
  • "street2": null,
  • "city": "Los Angeles",
  • "postcode": "90068",
  • "state": "ca",
  • "country_code": "us"
}

Delete address

Delete address record

path Parameters
address_id
required
string
Example: H4Z2WajQTJBW5aqQ

Address ID

Responses

Card

Card endpoints

List patient cards

List patient cards

path Parameters
patient_id
required
string

Patient id

query Parameters
page
integer
Example: page=2

Current pagination page

per_page
integer [ 1 .. 100 ]
Default: 20
Example: per_page=20

Pagination page size

Responses

Response samples

Content type
application/json
{
  • "page": 0,
  • "per_page": 0,
  • "total_pages": 0,
  • "data": [
    ]
}

Fetch card

Fetch card

path Parameters
card_id
required
string

Card id

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "card_type": "string",
  • "last4": "string",
  • "phone": "string"
}

Delete card

Delete card

path Parameters
card_id
required
string

Card id

Responses

Checkout Session

Checkout Session endpoints

Create checkout session

Create Checkout Session

Request Body schema: application/json
success_url
required
string
cancel_url
required
string
required
object
required
Array of objects non-empty

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "status": "paid",
  • "checkout_url": "string",
  • "success_url": "https://healnow.io/success",
  • "cancel_url": "https://healnow.io/cancel",
  • "total_in_cents": 0,
  • "totals": {
    },
  • "patient": {
    },
  • "items": [
    ],
  • "payment": null
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "status": "paid",
  • "checkout_url": "string",
  • "success_url": "https://healnow.io/success",
  • "cancel_url": "https://healnow.io/cancel",
  • "total_in_cents": 0,
  • "totals": {
    },
  • "patient": {
    },
  • "items": [
    ],
  • "payment": null
}

Fetch checkout session

Fetch checkout session record

path Parameters
session_id
required
string

Session ID

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "status": "paid",
  • "checkout_url": "string",
  • "success_url": "https://healnow.io/success",
  • "cancel_url": "https://healnow.io/cancel",
  • "total_in_cents": 0,
  • "totals": {
    },
  • "patient": {
    },
  • "items": [
    ],
  • "payment": null
}

Expire checkout session

Expire checkout session

path Parameters
session_id
required
string

Session ID

Responses

Order

Order endpoints

List orders

List order records

query Parameters
page
integer
Example: page=2

Current pagination page

per_page
integer [ 1 .. 100 ]
Default: 20
Example: per_page=20

Pagination page size

Responses

Response samples

Content type
application/json
{
  • "page": 0,
  • "per_pate": 0,
  • "total_pages": 0,
  • "data": [
    ]
}

Create order

Create new order

Request Body schema: application/json
required
object
required
Array of objects non-empty
required
object

Responses

Request samples

Content type
application/json
{
  • "patient": {
    },
  • "card": {
    },
  • "items": [
    ]
}

Fetch order

Fetch order record

path Parameters
order_id
required
string
Example: UdAdI0Wm6cG1oVUG

Order ID

Responses

Response samples

Content type
application/json
{
  • "id": "vk1AJK1exCI5QxBX",
  • "ref": "000005",
  • "archived": false,
  • "status": "paid",
  • "total_in_cents": 0,
  • "totals": {
    },
  • "signature": "Jane Doe",
  • "answers": [
    ],
  • "patient": {
    },
  • "payment": {
    },
  • "shipment": {
    },
  • "address": {
    },
  • "items": [
    ]
}

Fetch order receipt

Fetch order receipt prf

path Parameters
order_id
required
string
Example: UdAdI0Wm6cG1oVUG

Order ID

Responses

List patient orders

List patient order records

path Parameters
patient_id
required
string
Example: dhOK9luFA6t7Wg5I

Patient ID

query Parameters
page
integer
Example: page=2

Current pagination page

per_page
integer [ 1 .. 100 ]
Default: 20
Example: per_page=20

Pagination page size

Responses

Response samples

Content type
application/json
{
  • "page": 0,
  • "per_pate": 0,
  • "total_pages": 0,
  • "data": [
    ]
}

Patient

Patient endpoints

List patients

List patient records

query Parameters
page
integer
Example: page=2

Current pagination page

per_page
integer [ 1 .. 100 ]
Default: 20
Example: per_page=20

Pagination page size

Responses

Response samples

Content type
application/json
{
  • "page": 0,
  • "per_page": 0,
  • "total_pages": 0,
  • "data": [
    ]
}

Create patient

Create patient record

Request Body schema: application/json
eid
required
string

External ID

first_name
required
string

First Name

last_name
required
string

Last Name

dob
required
string

Date of birth

phone
string

Phone number

email
string

Email address

Array of objects (Prescription)
Array of objects (Address)

Responses

Request samples

Content type
application/json
No sample

Response samples

Content type
application/json
{
  • "id": "mHlcouikWQp9JCy2",
  • "eid": "62bf832b-bbbd-44ff-9417-cd4949c8362c",
  • "first_name": "Jane",
  • "last_name": "Doe",
  • "dob": "1979-05-07 00:00:00.000000",
  • "phone": "+1111111111",
  • "email": "jane@healnow.io",
}

Fetch patient

Fetch patient record

path Parameters
patient_id
required
string
Example: dhOK9luFA6t7Wg5I

Patient ID

Responses

Response samples

Content type
application/json
{
  • "id": "mHlcouikWQp9JCy2",
  • "eid": "62bf832b-bbbd-44ff-9417-cd4949c8362c",
  • "first_name": "Jane",
  • "last_name": "Doe",
  • "dob": "string",
  • "phone": "+1111111111",
  • "email": "jane@healnow.io",
}

Update patient record

Update patient record

path Parameters
patient_id
required
string
Example: dhOK9luFA6t7Wg5I

Patient ID

Request Body schema: application/json
eid
required
string

External ID

first_name
required
string

First Name

last_name
required
string

Last Name

dob
required
string

Date of birth

phone
string

Phone number

email
string

Email address

Responses

Request samples

Content type
application/json
{
  • "eid": "62bf832b-bbbd-44ff-9417-cd4949c8362c",
  • "first_name": "Jane",
  • "last_name": "Doe",
  • "dob": "string",
  • "phone": "+1111111111",
  • "email": "jane@healnow.io"
}

Response samples

Content type
application/json
{
  • "id": "mHlcouikWQp9JCy2",
  • "eid": "62bf832b-bbbd-44ff-9417-cd4949c8362c",
  • "first_name": "Jane",
  • "last_name": "Doe",
  • "dob": "string",
  • "phone": "+1111111111",
  • "email": "jane@healnow.io",
}

Fetch patient cart

Fetch patient cart record

path Parameters
patient_id
required
string
Example: dhOK9luFA6t7Wg5I

Patient ID

Responses

Response samples

Content type
application/json
{
  • "total_in_cents": 0,
  • "totals": {
    },
  • "prescriptions": [
    ],
  • "patient": {
    }
}

Prescription

Prescription endpoints

List patient prescriptions

List patient prescription records

path Parameters
patient_id
required
string
Example: dhOK9luFA6t7Wg5I

Patient ID

query Parameters
page
integer
Example: page=2

Current pagination page

per_page
integer [ 1 .. 100 ]
Default: 20
Example: per_page=20

Pagination page size

Responses

Response samples

Content type
application/json
{
  • "page": 0,
  • "per_pate": 0,
  • "total_pages": 0,
  • "data": [
    ]
}

Create patient prescription

Create patient prescription record

path Parameters
patient_id
required
string
Example: dhOK9luFA6t7Wg5I

Patient ID

Request Body schema: application/json
eid
required
string
name
required
string
rx_number
required
string
refill_number
null or string
price_in_cents
required
integer
provider
required
string
days_supply
required
integer
qty
required
integer
is_refill
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "eid": "35db90c0-97b7-4563-a18f-a364aeec95d9",
  • "name": "Carisoprodol 350 Mg Tablet",
  • "rx_number": "120143",
  • "refill_number": null,
  • "price_in_cents": 1299,
  • "provider": "Dr Jones",
  • "days_supply": 30,
  • "qty": 30,
  • "is_refill": false
}

Response samples

Content type
application/json
{
  • "id": "BWCTLvfzTklvXmCu",
  • "eid": "35db90c0-97b7-4563-a18f-a364aeec95d9",
  • "name": "Carisoprodol 350 Mg Tablet",
  • "rx_number": "120143",
  • "refill_number": null,
  • "price_in_cents": 1299,
  • "status": "pending",
  • "provider": "Dr Jones",
  • "days_supply": 30,
  • "qty": 30,
  • "is_refill": false
}

Fetch prescription

Fetch prescription record

path Parameters
prescription_id
required
string

Prescription ID

Responses

Response samples

Content type
application/json
{
  • "id": "BWCTLvfzTklvXmCu",
  • "eid": "35db90c0-97b7-4563-a18f-a364aeec95d9",
  • "name": "Carisoprodol 350 Mg Tablet",
  • "rx_number": "120143",
  • "refill_number": null,
  • "price_in_cents": 1299,
  • "status": "pending",
  • "provider": "Dr Jones",
  • "days_supply": 30,
  • "qty": 30,
  • "is_refill": false
}

Update prescription

Update prescription record

path Parameters
prescription_id
required
string

Prescription ID

Request Body schema: application/json
eid
required
string
name
required
string
rx_number
required
string
refill_number
null or string
price_in_cents
required
integer
provider
required
string
days_supply
required
integer
qty
required
integer
is_refill
boolean
Default: false

Responses

Request samples

Content type
application/json
{
  • "eid": "35db90c0-97b7-4563-a18f-a364aeec95d9",
  • "name": "Carisoprodol 350 Mg Tablet",
  • "rx_number": "120143",
  • "refill_number": null,
  • "price_in_cents": 1299,
  • "provider": "Dr Jones",
  • "days_supply": 30,
  • "qty": 30,
  • "is_refill": false
}

Response samples

Content type
application/json
{
  • "id": "BWCTLvfzTklvXmCu",
  • "eid": "35db90c0-97b7-4563-a18f-a364aeec95d9",
  • "name": "Carisoprodol 350 Mg Tablet",
  • "rx_number": "120143",
  • "refill_number": null,
  • "price_in_cents": 1299,
  • "status": "pending",
  • "provider": "Dr Jones",
  • "days_supply": 30,
  • "qty": 30,
  • "is_refill": false
}

Cancel prescription

Cancel prescription record

path Parameters
prescription_id
required
string

Prescription ID

Responses