## createNotificationSubscription **Type:** GraphQL mutations **Description:** Create an HTTPS notification subscription (webhook) with built-in delivery retries (exponential back off over ~24 hours) by specifying the URL which will receive the HTTP POST request as the *endpoint*. Leverage Basic and Digest Access Authentication by using a URL formatted as https://user:password@domain.com or https://user@domain.com, respectively. (The password will be encrypted using TLS/SSL and not sent in plaintext). A confirmation message will be sent to the endpoint specified in each created notification subscriptions. Navigate to the URL in the confirmation message to confirm the subscription. Unconfirmed subscriptions will be automatically deleted 3 days after their creation. Alternatively, create an EMAIL notification subscription by specifying an email address as the *endpoint*. ### Arguments - type (NotificationSubscriptionType, Not Null): undefined - endpoint (String) ### Response **Type:** NotificationSubscription **Description:** Subscription to real time notifications #### Fields - type (NotificationSubscriptionType) - id (String) - endpoint (String) --- ## deleteNotificationSubscription **Type:** GraphQL mutations **Description:** Delete a notification subscription by its *subscriptionId* ### Arguments - subscriptionId (String) ### Response **Type:** Boolean --- ## uploadFile **Type:** GraphQL mutations **Description:** Specify a file *name* and *type* for a given file to be uploaded and get a *fileId* and *uploadUrl* for it. Use HTTP POST to upload the file content to the *uploadUrl*. The *uploadUrl* has a 15-minute expiration time so use it before then. Pass the *fileId* as a parameter to other mutations, but only after posting the file content to the *uploadUrl*. ### Arguments - fileUpload (FileUploadInput): undefined - name (String): Full file name - type (FileType, Not Null): File type - category (Category): Service where the file will be used (optional) ### Response **Type:** FileUpload **Description:** Attributes of the file to be uploaded #### Fields - id (String): Unique File ID - name (String): Full file name provided by the user - type (FileType): File type corresponds directly with the MIME type (and often the file extension) - uploadUrl (String): Signed URL enabling file upload via HTTP PUT with 15-minute expiration --- ## suggestContacts **Type:** GraphQL mutations **Description:** Suggest products based on those in the contacts prescription ### Arguments - contacts (ContactsInput, Not Null): Contacts details - products (ContactsProductsInput): undefined - right (ContactsProductInput): undefined - productId (String): ID that uniquely maps to a manufacturer, brand, and potentially other parameters - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - left (ContactsProductInput): undefined - productId (String): ID that uniquely maps to a manufacturer, brand, and potentially other parameters - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - prescription (ContactsPrescriptionInput): undefined - fileId (String): File ID from *uploadFile* (conditionally required if *doctor* and *patient* are not set) - prescriptionId (String): Prescription ID - doctor (DoctorInput): Doctor details (conditionally required if prescription file ID is not set) - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - patient (PatientInput): Patient details (conditionally required if prescription file ID is not set) - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - products (ContactsProductsInput): Details about the prescribed contact lenses - right (ContactsProductInput) - left (ContactsProductInput) - issueDate (String): Issue date for the prescription YYYY-MM-DD format - expirationDate (String): Expiration date for the prescription YYYY-MM-DD format - options (ContactsJobOptionsInput): Contacts job options - contactsSuggestion (ContactsSuggestionJobOptionsInput): undefined - jobId (String) - contactsPrescriptionVerification (ContactsPrescriptionVerificationJobOptionsInput): undefined - jobId (String) - contactsPrescriptionIssuance (ContactsPrescriptionIssuanceJobOptionsInput): undefined - jobId (String) - sendText (Boolean) - sendEmail (Boolean) - buyLink (Boolean) - contactsFulfillment (ContactsFulfillmentJobOptionsInput): undefined - jobId (String) - wait (Int): The number of seconds between 0 and 20 to wait for completion; Default: 0 (no wait) - tags (TagInput): List of tags - name (String): The name of the tag - value (String): The value of the tag ### Response **Type:** ContactsSuggestionJob **Description:** Contacts suggestion job details #### Fields - jobId (String): Unique ID for this job - status (String): Current job status - reason (String): Current job reason, if applicable - contacts (Contacts): Contacts details - options (ContactsJobOptions): Contacts options - tags (Tag): List of tags used to correlate this workflow with other systems - updatedAt (String): Last date and time this job was updated --- ## verifyContactsPrescription **Type:** GraphQL mutations **Description:** Start a contacts prescription verification job ### Arguments - contacts (ContactsInput, Not Null): Contacts details - products (ContactsProductsInput): undefined - right (ContactsProductInput): undefined - productId (String): ID that uniquely maps to a manufacturer, brand, and potentially other parameters - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - left (ContactsProductInput): undefined - productId (String): ID that uniquely maps to a manufacturer, brand, and potentially other parameters - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - prescription (ContactsPrescriptionInput): undefined - fileId (String): File ID from *uploadFile* (conditionally required if *doctor* and *patient* are not set) - prescriptionId (String): Prescription ID - doctor (DoctorInput): Doctor details (conditionally required if prescription file ID is not set) - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - patient (PatientInput): Patient details (conditionally required if prescription file ID is not set) - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - products (ContactsProductsInput): Details about the prescribed contact lenses - right (ContactsProductInput) - left (ContactsProductInput) - issueDate (String): Issue date for the prescription YYYY-MM-DD format - expirationDate (String): Expiration date for the prescription YYYY-MM-DD format - options (ContactsJobOptionsInput): Contacts job options - contactsSuggestion (ContactsSuggestionJobOptionsInput): undefined - jobId (String) - contactsPrescriptionVerification (ContactsPrescriptionVerificationJobOptionsInput): undefined - jobId (String) - contactsPrescriptionIssuance (ContactsPrescriptionIssuanceJobOptionsInput): undefined - jobId (String) - sendText (Boolean) - sendEmail (Boolean) - buyLink (Boolean) - contactsFulfillment (ContactsFulfillmentJobOptionsInput): undefined - jobId (String) - wait (Int): The number of seconds between 0 and 20 to wait for completion; Default: 0 (no wait) - tags (TagInput): List of tags - name (String): The name of the tag - value (String): The value of the tag ### Response **Type:** ContactsPrescriptionVerificationJob **Description:** Contacts prescription verification job details #### Fields - jobId (String): Unique ID for this job - status (String): Current job status - reason (String): Current job reason, if applicable - contacts (Contacts): Contacts details - options (ContactsJobOptions): Contacts options - tags (Tag): List of tags used to correlate this workflow with other systems - updatedAt (String): Last date and time this job was updated --- ## issueContactsPrescription **Type:** GraphQL mutations **Description:** Start a contacts prescription issuance job ### Arguments - contacts (ContactsInput, Not Null): Contacts details - products (ContactsProductsInput): undefined - right (ContactsProductInput): undefined - productId (String): ID that uniquely maps to a manufacturer, brand, and potentially other parameters - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - left (ContactsProductInput): undefined - productId (String): ID that uniquely maps to a manufacturer, brand, and potentially other parameters - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - prescription (ContactsPrescriptionInput): undefined - fileId (String): File ID from *uploadFile* (conditionally required if *doctor* and *patient* are not set) - prescriptionId (String): Prescription ID - doctor (DoctorInput): Doctor details (conditionally required if prescription file ID is not set) - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - patient (PatientInput): Patient details (conditionally required if prescription file ID is not set) - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - products (ContactsProductsInput): Details about the prescribed contact lenses - right (ContactsProductInput) - left (ContactsProductInput) - issueDate (String): Issue date for the prescription YYYY-MM-DD format - expirationDate (String): Expiration date for the prescription YYYY-MM-DD format - options (ContactsJobOptionsInput): Contacts job options - contactsSuggestion (ContactsSuggestionJobOptionsInput): undefined - jobId (String) - contactsPrescriptionVerification (ContactsPrescriptionVerificationJobOptionsInput): undefined - jobId (String) - contactsPrescriptionIssuance (ContactsPrescriptionIssuanceJobOptionsInput): undefined - jobId (String) - sendText (Boolean) - sendEmail (Boolean) - buyLink (Boolean) - contactsFulfillment (ContactsFulfillmentJobOptionsInput): undefined - jobId (String) - wait (Int): The number of seconds between 0 and 20 to wait for completion; Default: 0 (no wait) - tags (TagInput): List of tags - name (String): The name of the tag - value (String): The value of the tag ### Response **Type:** ContactsPrescriptionIssuanceJob **Description:** Contacts prescription issuance job details #### Fields - jobId (String): Unique ID for this job - status (String): Current job status - reason (String): Current job reason, if applicable - contacts (Contacts): Contacts details - options (ContactsJobOptions): Contacts options - tags (Tag): List of tags used to correlate this workflow with other systems - updatedAt (String): Last date and time this job was updated --- ## verifyGlassesPrescription **Type:** GraphQL mutations **Description:** Start a glasses prescription verification job ### Arguments - glasses (GlassesInput, Not Null): Glasses details - lenses (GlassesLensesInput): undefined - right (GlassesLensInput): undefined - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - left (GlassesLensInput): undefined - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - intermediate (Float): Used to indicate single pupillary distance value in millimeters; Conditionally required if *near* and *distance* values are not provided - near (Float): Used to indicate pupillary distance for near vision in millimeters; Conditionally required if *intermediate* value is not provided - distance (Float): Used to indicate pupillary distance for distance vision in millimeters; Conditionally required if *intermediate* value is not provided - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - horizontal (GlassesLenPrismHorizontalInput): Horizontal prism power and direction - vertical (GlassesLenPrismVerticalInput): Vertical prism power and direction - frame (GlassesFrameInput): undefined - sku (String): Frame SKU - prescription (GlassesPrescriptionInput): undefined - fileId (String): File ID from *uploadFile* - prescriptionId (String): Prescription ID - doctor (DoctorInput): Prescribing doctor details - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - patient (PatientInput): Patient details - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - corrections (GlassesLensesInput): Prescribed corrections for distance, near, or multifocal lenses - right (GlassesLensInput) - left (GlassesLensInput) - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - issueDate (String): Issue date for the prescription YYYY-MM-DD format - expirationDate (String): Expiration date for the prescription YYYY-MM-DD format - options (GlassesJobOptionsInput): Job options - glassesPrescriptionVerification (GlassesPrescriptionVerificationJobOptionsInput): undefined - jobId (String) - glassesPrescriptionIssuance (GlassesPrescriptionIssuanceJobOptionsInput): undefined - jobId (String) - sendText (Boolean) - sendEmail (Boolean) - buyLink (Boolean) - glassesFulfillment (GlassesFulfillmentJobOptionsInput): undefined - frameOnly (Boolean) - lensReplacement (Boolean) - lensProtection (Boolean) - sendBox (Boolean) - wait (Int): The number of seconds between 0 and 20 to wait for completion; Default: 0 (no wait) - tags (TagInput): List of tags - name (String): The name of the tag - value (String): The value of the tag ### Response **Type:** GlassesPrescriptionVerificationJob **Description:** Glasses prescription verification job details #### Fields - jobId (String): Unique ID for this job - status (String): Current job status - reason (String): Current job reason, if applicable - glasses (Glasses): Glasses details - options (GlassesJobOptions): Glasses options - tags (Tag): List of tags used to correlate this workflow with other systems - updatedAt (String): Last date and time this job was updated --- ## submitOrder **Type:** GraphQL mutations **Description:** Submit order ### Arguments - order (OrderInput): Order details - orderId (String): Unique order ID - orderedAt (String): Date and time when the order was placed in ISO 8601 format - total (Float): Total order amount - customer (CustomerInput, Not Null): Customer information - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - shipping (ShippingInput, Not Null): Shipping details - method (String): Shipping method - address (ShippingAddressInput): Shipping address, customer address by default - to (String): Name of the recipient if different than the Patient name - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - items (ItemInput): Items in the order - type (ItemType, Not Null): undefined - itemId (String) - description (String) - comment (String) - glasses (GlassesItemInput): undefined - lens (LensInput) - frame (FrameInput) - protection (Boolean) - comment (String) - glasses (GlassesInput) - options (GlassesJobOptionsInput) - tags (TagInput) - quantity (Int) - lensReplacement (LensReplacementItemInput): undefined - box (Boolean) - lens (LensInput) - protection (Boolean) - quantity (Int) - comment (String) - contacts (ContactsItemInput): undefined - patient (PatientInput): Optional patient information - doctorId (String): Optional doctor Id - doctor (DoctorInput): Optional doctor information - products (ContactProductInput): Optional ordered products - prescriptions (ContactProductInput): Prescriptions pertinent to the ordered products - fileIds (String): File IDs from *uploadFile* for flat files containing prescription information - quantity (Int) - comment (String) - contacts (ContactsInput) - options (ContactsJobOptionsInput) - tags (TagInput) ### Response **Type:** Boolean --- ## saveOrder **Type:** GraphQL mutations **Description:** Save order details ### Arguments - order (OrderInput): Order details - orderId (String): Unique order ID - orderedAt (String): Date and time when the order was placed in ISO 8601 format - total (Float): Total order amount - customer (CustomerInput, Not Null): Customer information - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - shipping (ShippingInput, Not Null): Shipping details - method (String): Shipping method - address (ShippingAddressInput): Shipping address, customer address by default - to (String): Name of the recipient if different than the Patient name - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - items (ItemInput): Items in the order - type (ItemType, Not Null): undefined - itemId (String) - description (String) - comment (String) - glasses (GlassesItemInput): undefined - lens (LensInput) - frame (FrameInput) - protection (Boolean) - comment (String) - glasses (GlassesInput) - options (GlassesJobOptionsInput) - tags (TagInput) - quantity (Int) - lensReplacement (LensReplacementItemInput): undefined - box (Boolean) - lens (LensInput) - protection (Boolean) - quantity (Int) - comment (String) - contacts (ContactsItemInput): undefined - patient (PatientInput): Optional patient information - doctorId (String): Optional doctor Id - doctor (DoctorInput): Optional doctor information - products (ContactProductInput): Optional ordered products - prescriptions (ContactProductInput): Prescriptions pertinent to the ordered products - fileIds (String): File IDs from *uploadFile* for flat files containing prescription information - quantity (Int) - comment (String) - contacts (ContactsInput) - options (ContactsJobOptionsInput) - tags (TagInput) ### Response **Type:** Boolean --- ## savePatient **Type:** GraphQL mutations **Description:** Save patient detailst ### Arguments - patient (PatientInput, Not Null): Patient details - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link ### Response **Type:** Boolean --- ## saveContactsPrescription **Type:** GraphQL mutations **Description:** Save contacts prescription details ### Arguments - prescription (ContactsPrescriptionInput, Not Null): Contacts prescription details - fileId (String): File ID from *uploadFile* (conditionally required if *doctor* and *patient* are not set) - prescriptionId (String): Prescription ID - doctor (DoctorInput): Doctor details (conditionally required if prescription file ID is not set) - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - patient (PatientInput): Patient details (conditionally required if prescription file ID is not set) - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - products (ContactsProductsInput): Details about the prescribed contact lenses - right (ContactsProductInput): undefined - productId (String): ID that uniquely maps to a manufacturer, brand, and potentially other parameters - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - left (ContactsProductInput): undefined - productId (String): ID that uniquely maps to a manufacturer, brand, and potentially other parameters - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - issueDate (String): Issue date for the prescription YYYY-MM-DD format - expirationDate (String): Expiration date for the prescription YYYY-MM-DD format ### Response **Type:** Boolean --- ## saveGlassesPrescription **Type:** GraphQL mutations **Description:** Save glasses prescription details ### Arguments - prescription (GlassesPrescriptionInput, Not Null): Glasses prescription details - fileId (String): File ID from *uploadFile* - prescriptionId (String): Prescription ID - doctor (DoctorInput): Prescribing doctor details - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - patient (PatientInput): Patient details - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - corrections (GlassesLensesInput): Prescribed corrections for distance, near, or multifocal lenses - right (GlassesLensInput): undefined - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - left (GlassesLensInput): undefined - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - intermediate (Float): Used to indicate single pupillary distance value in millimeters; Conditionally required if *near* and *distance* values are not provided - near (Float): Used to indicate pupillary distance for near vision in millimeters; Conditionally required if *intermediate* value is not provided - distance (Float): Used to indicate pupillary distance for distance vision in millimeters; Conditionally required if *intermediate* value is not provided - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - horizontal (GlassesLenPrismHorizontalInput): Horizontal prism power and direction - vertical (GlassesLenPrismVerticalInput): Vertical prism power and direction - issueDate (String): Issue date for the prescription YYYY-MM-DD format - expirationDate (String): Expiration date for the prescription YYYY-MM-DD format ### Response **Type:** Boolean --- ## startWorkflow **Type:** GraphQL mutations **Description:** Start a workflow utilizing one or more Visibly services ### Arguments - name (String): The name of the workflow to run - patient (PatientInput): Optional patient information - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - doctorId (String): Optional doctor Id - doctor (DoctorInput): Optional doctor information - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - products (ContactProductInput): Optional ordered products - productId (String): ID that uniquely maps to a manufacturer, brand, and model combination - eye (Eye, Not Null): Indication of left (OS) or right (OD) eye - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - prescriptions (ContactProductInput): Prescriptions pertinent to the ordered products - productId (String): ID that uniquely maps to a manufacturer, brand, and model combination - eye (Eye, Not Null): Indication of left (OS) or right (OD) eye - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - fileIds (String): File IDs from *uploadFile* for flat files containing prescription information - tags (TagInput): List of tags used to correlate this workflow with other systems - name (String): The name of the tag - value (String): The value of the tag ### Response **Type:** Workflow **Description:** Start Workflow Request information #### Fields - workflowId (String): Unique ID for this workflow - launchUrl (String): If applicable, the launch URL for the first step in this workflow - requestId (String): Unique ID for a prescription verification request if applicable - requestStatus (ContactPrescriptionVerificationRequestStatus): Current request status - jobId (String): Unique ID for a prescription verification job (conditionally available) - status (String): Current prescription verification job status (conditionally available) - updatedAt (String): Last date and time this request was updated --- ## fulfillOrder **Type:** GraphQL mutations **Description:** Fulfill order ### Arguments - orderedAt (String): Date and time when the order was placed in ISO 8601 format - customer (CustomerInput, Not Null): Customer information - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - shipping (ShippingInput, Not Null): Shipping details - method (String): Shipping method - address (ShippingAddressInput): Shipping address, customer address by default - to (String): Name of the recipient if different than the Patient name - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - items (ItemInput): Items in the order - type (ItemType, Not Null): undefined - itemId (String) - description (String) - comment (String) - glasses (GlassesItemInput): undefined - lens (LensInput): undefined - type (LensType): Lens type - focus (LensFocus): Lens focus - material (LensMaterial): Lens material - quality (LensQuality): Lens quality - color (String): Lens color - edge (LensEdge): Lens edge type - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - prescription (PrescriptionInput): Optionally provided prescription details, applicable to CORRECTIVE lenses only - corrections (CorrectionsInput): Optionally provided correction details, applicable to CORRECTIVE lenses only - frame (FrameInput): undefined - sku (String): Frame SKU - protection (Boolean) - comment (String) - glasses (GlassesInput): undefined - lenses (GlassesLensesInput) - frame (GlassesFrameInput) - prescription (GlassesPrescriptionInput) - options (GlassesJobOptionsInput): undefined - glassesPrescriptionVerification (GlassesPrescriptionVerificationJobOptionsInput) - glassesPrescriptionIssuance (GlassesPrescriptionIssuanceJobOptionsInput) - glassesFulfillment (GlassesFulfillmentJobOptionsInput) - wait (Int): The number of seconds between 0 and 20 to wait for completion; Default: 0 (no wait) - tags (TagInput): undefined - name (String): The name of the tag - value (String): The value of the tag - quantity (Int) - lensReplacement (LensReplacementItemInput): undefined - box (Boolean) - lens (LensInput, Not Null): undefined - type (LensType): Lens type - focus (LensFocus): Lens focus - material (LensMaterial): Lens material - quality (LensQuality): Lens quality - color (String): Lens color - edge (LensEdge): Lens edge type - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - prescription (PrescriptionInput): Optionally provided prescription details, applicable to CORRECTIVE lenses only - corrections (CorrectionsInput): Optionally provided correction details, applicable to CORRECTIVE lenses only - protection (Boolean) - quantity (Int) - comment (String) - contacts (ContactsItemInput): undefined - patient (PatientInput): Optional patient information - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - doctorId (String): Optional doctor Id - doctor (DoctorInput): Optional doctor information - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - products (ContactProductInput): Optional ordered products - productId (String): ID that uniquely maps to a manufacturer, brand, and model combination - eye (Eye): Indication of left (OS) or right (OD) eye - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - prescriptions (ContactProductInput): Prescriptions pertinent to the ordered products - productId (String): ID that uniquely maps to a manufacturer, brand, and model combination - eye (Eye): Indication of left (OS) or right (OD) eye - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - fileIds (String): File IDs from *uploadFile* for flat files containing prescription information - quantity (Int) - comment (String) - contacts (ContactsInput): undefined - products (ContactsProductsInput) - prescription (ContactsPrescriptionInput) - options (ContactsJobOptionsInput): undefined - contactsSuggestion (ContactsSuggestionJobOptionsInput) - contactsPrescriptionVerification (ContactsPrescriptionVerificationJobOptionsInput) - contactsPrescriptionIssuance (ContactsPrescriptionIssuanceJobOptionsInput) - contactsFulfillment (ContactsFulfillmentJobOptionsInput) - wait (Int): The number of seconds between 0 and 20 to wait for completion; Default: 0 (no wait) - tags (TagInput): undefined - name (String): The name of the tag - value (String): The value of the tag - tags (TagInput): List of tags - name (String): The name of the tag - value (String): The value of the tag ### Response **Type:** Order **Description:** Order details #### Fields - orderId (String): Unique ID for this order - status (String): Current order status --- ## submitContactPrescriptionVerificationRequest **Type:** GraphQL mutations **Description:** Submit a contact prescription verification request ### Arguments - patient (PatientInput, Not Null): Patient information - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - doctorId (String): The doctor ID from the *doctors* query (conditionally required if *doctor* is not set) - doctor (DoctorInput): Doctor details (conditionally required if *doctorId* is not set) - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - products (ContactProductInput, Not Null): Ordered products - productId (String): ID that uniquely maps to a manufacturer, brand, and model combination - eye (Eye, Not Null): Indication of left (OS) or right (OD) eye - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - prescriptions (ContactProductInput): Prescriptions pertinent to the ordered products (conditionally required if *fileIds* is not set) - productId (String): ID that uniquely maps to a manufacturer, brand, and model combination - eye (Eye, Not Null): Indication of left (OS) or right (OD) eye - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - fileIds (String): File IDs from *uploadFile* for flat files containing prescription information (conditionally required if *prescriptions* is not set) - tags (String): Optional list of tags used to correlate this request with other systems ### Response **Type:** ContactPrescriptionVerificationRequest **Description:** Contact prescription verification request information #### Fields - id (String): Unique ID for this request - status (ContactPrescriptionVerificationRequestStatus): Current request status - expirationDate (String): Prescription expiration date if it is available - comments (String): Comments entered by Doctor and/or Visibly - updatedAt (String): Last date and time this request was updated --- ## startVisionTest **Type:** GraphQL mutations **Description:** Start a workflow utilizing one or more Visibly services ### Arguments - contacts (ContactsInput): Optional prescribed and ordered contacts - products (ContactsProductsInput): undefined - right (ContactsProductInput): undefined - productId (String): ID that uniquely maps to a manufacturer, brand, and potentially other parameters - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - left (ContactsProductInput): undefined - productId (String): ID that uniquely maps to a manufacturer, brand, and potentially other parameters - diameter (String): The width of the contact lens from edge to edge measured by millimeters - baseCurve (String): Indication of the curvature of the inside of the lens - sphere (String): The amount of lens power measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - axis (String): The lens meridian with no cylinder power, indicated by a value between 1 and 180 degrees - cylinder (String): The amount of lens power for astigmatism measured in diopters (D), minus sign (–) for nearsighted, plus sign (+) for farsighted - addition (String): The additional magnifying power that applies to the bottom portion of multifocal lenses to fix presbyopia - dominance (String): Indication of dominant or non-dominant eye - color (String): Color of the lens - packageSize (Int): Number of lenses per package - quantity (Int): Number of packages - prescription (ContactsPrescriptionInput): undefined - fileId (String): File ID from *uploadFile* (conditionally required if *doctor* and *patient* are not set) - prescriptionId (String): Prescription ID - doctor (DoctorInput): Doctor details (conditionally required if prescription file ID is not set) - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - patient (PatientInput): Patient details (conditionally required if prescription file ID is not set) - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - products (ContactsProductsInput): Details about the prescribed contact lenses - right (ContactsProductInput) - left (ContactsProductInput) - issueDate (String): Issue date for the prescription YYYY-MM-DD format - expirationDate (String): Expiration date for the prescription YYYY-MM-DD format - glasses (GlassesInput): Optional prescribed and ordered glasses - lenses (GlassesLensesInput): undefined - right (GlassesLensInput): undefined - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - left (GlassesLensInput): undefined - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - intermediate (Float): Used to indicate single pupillary distance value in millimeters; Conditionally required if *near* and *distance* values are not provided - near (Float): Used to indicate pupillary distance for near vision in millimeters; Conditionally required if *intermediate* value is not provided - distance (Float): Used to indicate pupillary distance for distance vision in millimeters; Conditionally required if *intermediate* value is not provided - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - horizontal (GlassesLenPrismHorizontalInput): Horizontal prism power and direction - vertical (GlassesLenPrismVerticalInput): Vertical prism power and direction - frame (GlassesFrameInput): undefined - sku (String): Frame SKU - prescription (GlassesPrescriptionInput): undefined - fileId (String): File ID from *uploadFile* - prescriptionId (String): Prescription ID - doctor (DoctorInput): Prescribing doctor details - doctorId (String): Doctor ID (conditionally required if doctor name, practice name, and phone number are not set) - doctorName (String): Doctor name (conditionally required if doctor ID is not set) - practiceName (String): Practice name (conditionally required if doctor ID is not set) - phoneNumber (String): Phone number (conditionally required if doctor ID is not set) - faxNumber (String): Fax number - email (String): Doctor email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - url (String): Website URL - patient (PatientInput): Patient details - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - corrections (GlassesLensesInput): Prescribed corrections for distance, near, or multifocal lenses - right (GlassesLensInput) - left (GlassesLensInput) - type (GlassesLensType): Lens type - material (GlassesLensMaterial): Lens material - quality (GlassesLensQuality): Lens quality - color (String): Lens color - edge (GlassesLensEdge): Lens edge finish - addons (String): Additional anti-reflective, anti-fog, anti-scratch, and other coatings - focus (GlassesLensFocus): Lens focus - sphere (String): Sphere - cylinder (String): Cylinder - axis (String): Axis - addition (String): Addition - pupillaryDistance (PupillaryDistanceInput): Pupillary distance - segmentHeight (String): Segment height - prism (GlassesLensPrismInput): Prism corrections - issueDate (String): Issue date for the prescription YYYY-MM-DD format - expirationDate (String): Expiration date for the prescription YYYY-MM-DD format - patient (PatientInput): Optional patient information - patientId (String): Patient ID - firstName (String): First name - middleName (String): Middle name - lastName (String): Last name - dateOfBirth (String): Date of birth in ISO 8601 format, i.e., YYYY-MM-DD - phoneNumber (String): Phone number - email (String): Email address - address (String): Street address #1 - address2 (String): Street address #2 - city (String): City - state (String): State - zipCode (String): Zip code - schedulerLink (String): Scheduler link - tags (TagInput): Optional List of tags used to correlate this vision test with other systems - name (String): The name of the tag - value (String): The value of the tag ### Response **Type:** Session **Description:** Start vision test response #### Fields - launchUrl (String): The launch URL for the vision test - jobId (String): The job ID for the vision-test job (if applicable, simulation support only) --- ## mapProducts **Type:** GraphQL mutations ### Arguments - products (ContactProductMappingInput, Not Null): List of products and parameters to map against their base products using either baseId or productKey - baseId (String): Base 4-letter ID for the product mapping - productKey (String): Base/Product Key for the product mapping - productId (String): partner product ID for the product mapping - manufacturer (String): Manufacturer name - brand (String): Brand name - sphere (String): Possible sphere values - diameter (String): Possible diameter values - baseCurve (String): Possible baseCurve values - axis (String): Possible axis values - cylinder (String): Possible cylinder values - addition (String): Possible addition values - dominance (String): Possible dominance values - color (String): Possible color values - packageSize (String): Number of lenses per package ### Response **Type:** ContactProductMappingResponse **Description:** Contacts Product Mapping Response #### Fields - ok (String)