Create a Session

Generate a unique session for the user.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

SUMMARY

This endpoint will create and persist both a user and a session record and associate them.

Submitting unqualified user or prescription info will return a 403 Forbidden error and high level disqualifications reasons. These reasons include age, region, prescription, and unknown_product_key.

The sample POST Body includes prior prescription information for both contact lenses and glasses. Your POST may include one, both, or neither based on the patient information you've collected.

ORDER OBJECT

The order object is an optional parameter that allows you to detail what service the user has purchased and how much you've charged them for the service.

Product

The order.products field should include an array of desired product types for your user. The field supports several types of products, including: glasses, contacts, and acuity-service. If no product type is included, we allow the user to select one of the prescription products during the exam experience.

🚧

Bundling Product Types

Prescription products (glasses and/or contacts) and the acuity-service product are mutually exclusive and cannot be combined in the same order.

Pricing

The order.charged_amount field indicates how much you've charged the user. Submitting 0 or greater indicates that you have charged the user, which will suppress the payment collection at the end of the experience. Submitting null indicates that Visibly will handle collection, and will charge the user accordingly.

All amounts should be submitted in the smallest currency unit.

Partner_Info

the partner_info block can optionally be sent to add additional metadata to the created session. This information is hosted and stored by Visibly for analytics and troubleshooting purposes. This block will accept any data in a JSON Object so long as it is less than 20,000 characters in size.

IN-STORE OBJECT

Store_Id

The store_id field can be optionally set to include a Visibly configured store id. Please work with your Visibly contact to configure this field correctly. If left blank no "in-store" action will take place. The corresponding store id that is provided must be enabled and associated to partner configured instances within Visibly.

RE-ORDERING OBJECT

Re-ordering Info

The reordering field can be optionally set as true to indicate that the prescription parameters passed via the prescriptions object represent the end user's prior prescription (i.e. not a net new prescription). A false value would indicate that prescription passed via the prescription object is not a prior prescription.

JSON

{
  "user_key": "user1",
  "session_key": "session1",
  "user": {
    "email": "[email protected]",
    "first_name": "Test",
    "last_name": "User",
    "birthdate": "1988-01-01",
    "region": "IL"
  },
  "order": {
    "charged_currency": "USD",
    "charged_amount": 6000,
    "products": [
      {
        "type": "contacts"
      },
      {
        "type": "glasses"
      }
    ]
  },
  "store_id": "store_1234",
  "partner_info": {
  	"metadata_keys": "meta data values"
  },
	"prescriptions": [
    {
      "type": "contacts",
      "verification": "verified",
			"reordering": true,
      "issue_date": "2017-07-04",
      "expiration_date": "2018-07-04",      
      "right_eye": {
        "product_key": "example1",
        "sphere": -1.0,
        "cylinder": -0.25,
        "axis": 90,
        "base_curve": 8.7,
        "diameter": 14.1,
        "add": 1.50,
        "dominance": "D"
      },
      "left_eye": {
        "product_key": "example1",
        "sphere": -1.0,
        "cylinder": -0.25,
        "axis": 90,
        "base_curve": 8.7,
        "diameter": 14.1,
        "add": 1.50,
        "dominance": "N"        
      }
    },
    {
      "type": "glasses",
      "verification": "unverified",
      "right_eye": {
        "sphere": -1.0,
        "cylinder": -0.25,
        "axis": 90,
        "add": null,
        "pupillary_distance": 30.0
      },
      "left_eye": {
        "sphere": -1.0,
        "cylinder": -0.25,
        "axis": 90,
        "add": null,
        "pupillary_distance": 30.0
      }
    }
  ]
}
Body Params
string
required

A unique, PHI-compliant identifier for each user sent to the API

string
required

A unique, PHI-compliant identifier for each user transaction sent to the API

user
object
required
order
object

The order made on the product, including the charged amount, and the products purchased. If you would like Visibly to accept payment at the end of the test, pass null into the charged_amount field.

prescriptions
array of objects
prescriptions
Responses
201

Session created

400

Invalid request

401

Authentication required

422

Session cannot be created

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json