openapi: 3.2.0
info:
title: Predoc Partner Record Request API
description: API for the Predoc platform to allow partners to request the retrieval of patient records.
version: '1.1'
contact: {}
servers:
- url: https://partner-api-stage.predoc.ai/api
tags:
- name: Record Request
description: ''
paths:
/v1/requests/facesheet-configs:
get:
description: Returns the available facesheet configurations. Pass a configuration ID when creating a patient request to generate the corresponding facesheet.
operationId: RequestController_facesheetConfigs_v1
parameters: []
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/FacesheetConfigListRespDto'
security:
- bearer: []
summary: List of Facesheet Configs Available
tags:
- Record Request
/v1/requests/{requestId}:
patch:
description: Updates an existing patient record request if processing has not started. If the request can no longer be updated, the response indicates that the update was unsuccessful.
operationId: RequestController_updateExistingRecordRequest_v1
parameters:
- name: requestId
required: true
in: path
description: Request id.
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ModifyCrrInpDto'
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateRequestRespDto'
security:
- bearer: []
summary: Update Existing Patient Record Request
tags:
- Record Request
/v2/requests:
post:
description: Creates a patient and a record-retrieval request, associates them with the organization for the authenticated credential, and returns a request ID for checking status and retrieving documents programmatically. V2 also protects against creating duplicate patients with the same personally identifiable information.
operationId: RequestController_createRecordRequestV2_v2
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreatePatientWithCrrV2InpDto'
responses:
'201':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/RecordRequestRespDto'
security:
- bearer: []
summary: Create Patient with Record Request
tags:
- Record Request
get:
description: Returns all patient record requests in Predoc. Returned request and reference identifiers can be used to correlate requests and retrieve the corresponding patient information.
operationId: RequestController_getListOfRecordRequests_v2
parameters:
- name: offset
required: true
in: query
description: Paging offset.
schema:
type: number
- name: limit
required: true
in: query
description: Max number of records in the response.
schema:
type: number
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/RecordRequestListRespDto'
security:
- bearer: []
summary: List of All Patient Record Requests
tags:
- Record Request
components:
schemas:
RecordRequestListRespDto:
type: object
properties:
recordRequests:
description: List of patients and their associated record requests.
type: array
items:
$ref: '#/components/schemas/OrganizationPatientStatusRespDto'
pagination:
description: Pagination info.
allOf:
- $ref: '#/components/schemas/PaginationRespDto'
required:
- recordRequests
- pagination
PreviousProviderInpDto:
type: object
properties:
orgName:
type: string
description: Full name of the organization provider. This is only required when `providerFirstName` and `providerLastName` are not used.
providerFirstName:
type: string
description: First name of the provider. This is only required when `orgName` is not used.
providerLastName:
type: string
description: Last name of the provider. This is only required when `orgName` is not used.
practiceName:
type: string
description: Provider's practice name.
orgAddress:
description: Physical address of the organization's provider.
allOf:
- $ref: '#/components/schemas/AddressPreviousProviderInpDto'
orgPhoneCountryCode:
type: string
default: '+1'
deprecated: true
description: Country code of the organization's phone number with a + at the beginning.
example: '+1'
orgPhoneNumber:
type: string
description: Phone number of the organization, with no special characters (digits only).
example: '5553643856'
orgFaxNumber:
type: string
description: Fax number of the organization, with no special characters (digits only).
example: '5553643856'
datesOfService:
description: Date range of when the organization provided care to the patient.
allOf:
- $ref: '#/components/schemas/RequestDatesOfServiceInpDto'
specificMedicalRecordRequested:
type: string
description: Type of custom document requested, if necessary.
example: oncology
required:
- orgName
- providerFirstName
- providerLastName
- datesOfService
UpdateRequestRespDto:
type: object
properties:
message:
type: string
description: Result of the request update.
example: Request updated successfully
requestId:
type: string
description: Request ID that was updated.
format: uuid
partnerPatientId:
type: string
description: Partner patient ID that the request belongs to.
format: uuid
status:
type: string
description: Status of the request.
example: OPEN
referenceId:
type: string
description: User-defined reference number for the request. This can be used for your own records and is not used by the Predoc platform.
example: '1234567890'
required:
- message
- requestId
- partnerPatientId
- status
OrganizationPatientStatusRespDto:
type: object
properties:
patient:
description: Patient data.
allOf:
- $ref: '#/components/schemas/PatientDataRespDto'
requests:
description: List of request IDs with referenceIds.
type: array
items:
$ref: '#/components/schemas/PatientCrrRequestShortRespDto'
required:
- patient
- requests
PatientCrrRequestShortRespDto:
type: object
properties:
requestId:
type: string
description: ID of the request.
format: uuid
referenceId:
type: string
description: User-defined reference number for the request. This can be used for your own records and is not used by the Predoc platform.
example: '1234567890'
required:
- requestId
RecordRequestRespDto:
type: object
properties:
partnerPatientId:
type: string
description: Partner patient ID for use when making patient requests.
format: uuid
requestId:
type: string
description: Predoc request identifier for the new patient request.
format: uuid
message:
type: string
description: Any processing or error messages associated with the request. This field is optional and may be omitted if no message is available.
example: Patient created successfully
referenceId:
type: string
description: User-defined reference number for the request. This can be used for your own records and is not used by the Predoc platform.
example: '1234567890'
previousProviderRetrievals:
description: Created previous-provider retrievals associated with the request.
example:
- id: 11111111-1111-4111-8111-111111111111
type: array
items:
$ref: '#/components/schemas/PreviousProviderRetrievalRespDto'
required:
- partnerPatientId
- requestId
- message
- previousProviderRetrievals
CreatePatientWithCrrV2InpDto:
type: object
properties:
releaseToOrgName:
type: string
description: Name of the organization making the request.
example: ABC Hospital
releaseToProviderName:
type: string
description: Name of the provider the patient is being released to.
example: Dr. Jane Doe
previousProviders:
description: List of previous providers known for the requested patient.
type: array
items:
$ref: '#/components/schemas/PreviousProviderInpDto'
doNotKnowPreviousProvider:
type: boolean
deprecated: true
description: NOTE: This field is deprecated and will be removed in a future release. Please use the `previousProviders` field instead.
reasonForRequest:
type: integer
description: 'Reason for the request: `0` for Future Appointment or `2` for Information Gathering.'
example: 0
enum:
- 0
- 2
futureAppointmentDate:
type: string
description: Date of the future appointment in `YYYY-MM-DD` format. Required if the request reason is `0 (Future Appointment)`.
example: '2026-09-17'
requestingProviderEmail:
type: string
description: Email address of the provider or physician making the request.
example: jane.doe@domain.com
patientAuthFile:
description: Base-64 encoded file data for the patient authorization file, if available.
allOf:
- $ref: '#/components/schemas/EncodedFileInpDto'
referenceId:
type: string
description: User-defined reference number for the request. This can be used for your own records and is not used by the Predoc platform.
example: '1234567890'
sendHieRequest:
type: boolean
description: Send HIE request.
example: true
sendMedicationsRequest:
type: boolean
description: Send Medications request.
example: true
facesheetConfigId:
type: string
description: Facesheet config ID to generate request with.
facesheetConfigIds:
description: Facesheet config IDs to generate request with.
type: array
items:
type: string
format: uuid
firstName:
type: string
description: First name of the patient.
example: Martha
minLength: 2
maxLength: 45
middleInitial:
type: string
description: Middle initial of the patient.
example: S
lastName:
type: string
description: Last name of the patient.
example: Rangel
minLength: 2
maxLength: 60
dateOfBirth:
type: string
description: Date of birth of the patient, in `YYYY-MM-DD` format.
example: '1970-03-10'
phoneCountryCode:
type: string
deprecated: true
description: Country code of the patient's phone number with a `+` at the beginning. Defaults to +1.
example: '+1'
phoneNumber:
type: string
description: Phone number of the patient, with no special characters (only digits).
example: '7175501675'
minLength: 10
maxLength: 10
email:
type: string
description: Email address of the patient.
example: martha.rangel@domain.com
patientAddress:
description: Physical address of the patient.
allOf:
- $ref: '#/components/schemas/AddressInpDto'
patientGender:
type: string
description: Gender of the patient.
enum:
- male
- female
- na
- other
allowDuplicatePatient:
type: boolean
description: Override the patient demographics check and create the patient regardless of whether a patient with the same PII exists.
example: false
required:
- releaseToOrgName
- releaseToProviderName
- previousProviders
- reasonForRequest
- requestingProviderEmail
- firstName
- lastName
- dateOfBirth
- phoneNumber
- patientAddress
- patientGender
PreviousProviderUpdInpDto:
type: object
properties:
orgName:
type: string
description: Full name of the organization provider. This is only required when `providerFirstName` and `providerLastName` are not used.
providerFirstName:
type: string
description: First name of the provider. This is only required when `orgName` is not used.
providerLastName:
type: string
description: Last name of the provider. This is only required when `orgName` is not used.
practiceName:
type: string
description: Provider's practice name.
orgAddress:
description: Physical address of the organization's provider.
allOf:
- $ref: '#/components/schemas/AddressPreviousProviderInpDto'
orgPhoneCountryCode:
type: string
default: '+1'
deprecated: true
description: Country code of the organization's phone number with a + at the beginning.
example: '+1'
orgPhoneNumber:
type: string
description: Phone number of the organization, with no special characters (digits only).
example: '5553643856'
orgFaxNumber:
type: string
description: Fax number of the organization, with no special characters (digits only).
example: '5553643856'
datesOfService:
description: Date range of when the organization provided care to the patient.
allOf:
- $ref: '#/components/schemas/RequestDatesOfServiceInpDto'
specificMedicalRecordRequested:
type: string
description: Type of custom document requested, if necessary.
example: oncology
id:
type: number
description: Record identifier in case of editing existing instance.
required:
- orgName
- providerFirstName
- providerLastName
- datesOfService
PreviousProviderRetrievalRespDto:
type: object
properties:
id:
type: string
description: Previous-provider retrieval identifier UUID.
format: uuid
example: 11111111-1111-4111-8111-111111111111
required:
- id
RequestDatesOfServiceInpDto:
type: object
properties:
serviceStartDate:
type: string
description: Date of when the organization started providing care to the patient.
example: '2026-08-09'
serviceEndDate:
type: string
description: End date of when the organization stopped providing care to the patient.
example: '2026-09-09'
required:
- serviceStartDate
- serviceEndDate
AddressRespDto:
type: object
properties: {}
EncodedFileInpDto:
type: object
properties:
encodedFile:
type: string
description: Base-64 encoded data of the file being uploaded.
format: base64
fileExtension:
type: string
description: File extension of the file being uploaded.
example: pdf
dataType:
type: string
description: Type of the file being uploaded.
example: image
required:
- encodedFile
- fileExtension
- dataType
FacesheetConfigListRespDto:
type: object
properties:
facesheetConfigs:
description: List of facesheet configs available.
type: array
items:
$ref: '#/components/schemas/FacesheetConfigRespDto'
required:
- facesheetConfigs
AddressPreviousProviderInpDto:
type: object
properties:
addressLine1:
type: string
description: Street address line 1.
example: 123 Main St
addressLine2:
type: string
description: Street address line 2.
example: 'Apt # 123'
city:
type: string
description: Name of the city.
example: Charlotte
stateCode:
type: string
description: Two letter state code for the address.
example: NC
postalCode:
type: string
description: Postal code for the address - 5 digits.
example: '28105'
countryCode:
type: string
description: NOTE: This field is deprecated and will be removed in a future release.
default: USA
deprecated: true
example: USA
PaginationRespDto:
type: object
properties:
offset:
type: number
description: Offset of this chunk in the list.
limit:
type: number
description: Amount records returned.
total:
type: number
description: Total amount of records.
required:
- offset
- limit
- total
AddressInpDto:
type: object
properties:
addressLine1:
type: string
description: Street address line 1.
example: 4990 HOOVER RD
addressLine2:
type: string
description: Street address line 2.
example: APT 227
city:
type: string
description: Name of the city.
example: GROVE CITY
stateCode:
type: string
description: Two letter state code for the address.
example: OH
postalCode:
type: string
description: Postal code for the address - 5 digits.
example: '43123'
countryCode:
type: string
description: NOTE: This field is deprecated and will be removed in a future release.
default: USA
deprecated: true
example: USA
required:
- postalCode
FacesheetConfigRespDto:
type: object
properties:
facesheetId:
type: string
description: Config ID.
facesheetName:
type: string
description: Config display name.
required:
- facesheetId
- facesheetName
ModifyCrrInpDto:
type: object
properties:
releaseToOrgName:
type: string
description: Name of the organization making the request.
example: ABC Hospital
releaseToProviderName:
type: string
description: Name of the provider the patient is being released to.
example: Dr. Jane Doe
previousProviders:
description: List of previous providers known for the requested patient.
type: array
items:
$ref: '#/components/schemas/PreviousProviderUpdInpDto'
doNotKnowPreviousProvider:
type: boolean
deprecated: true
description: NOTE: This field is deprecated and will be removed in a future release. Please use the `previousProviders` field instead.
reasonForRequest:
type: integer
description: 'Reason for the request: `0` for Future Appointment or `2` for Information Gathering.'
example: 0
enum:
- 0
- 2
futureAppointmentDate:
type: string
description: Date of the future appointment in `YYYY-MM-DD` format. Required if the request reason is `0 (Future Appointment)`.
example: '2026-09-17'
requestingProviderEmail:
type: string
description: Email address of the provider or physician making the request.
example: jane.doe@domain.com
patientAuthFile:
description: Base-64 encoded file data for the patient authorization file, if available.
allOf:
- $ref: '#/components/schemas/EncodedFileInpDto'
referenceId:
type: string
description: User-defined reference number for the request. This can be used for your own records and is not used by the Predoc platform.
example: '1234567890'
sendMedicationsRequest:
type: boolean
description: Send Medications request.
example: true
facesheetConfigId:
type: string
description: Facesheet config ID to generate request with.
facesheetConfigIds:
description: Facesheet config IDs to generate request with.
type: array
items:
type: string
format: uuid
patientId:
type: string
description: ID of the patient to modify the request for.
format: uuid
required:
- releaseToOrgName
- releaseToProviderName
- previousProviders
- reasonForRequest
- requestingProviderEmail
- patientId
PatientDataRespDto:
type: object
properties:
middleName:
type: string
description: Middle name of the patient.
example: Sara
firstName:
type: string
description: First name of the patient.
example: Martha
lastName:
type: string
description: Last name of the patient.
example: Rangel
address:
description: Physical address of the patient.
example:
address1: 4990 HOOVER RD
address2: APT 227
city: GROVE CITY
state: OH
postalCode: '43123'
allOf:
- $ref: '#/components/schemas/AddressRespDto'
dateOfBirth:
type: string
description: Date of birth of the patient, in `YYYY-MM-DD` format.
format: date
example: '1970-03-10'
genderName:
type: string
description: Gender of the patient.
example: female
phoneNumber:
type: string
description: Phone number of the patient, as digits only.
example: '7175501675'
email:
type: string
description: Email address of the patient.
example: martha.rangel@domain.com
primaryLanguage:
type: string
description: Primary language of the patient.
example: english
cumulativePatientStatus:
type: object
properties:
OPEN:
example: 3
type: number
COMPLETED:
example: 3
type: number
PROCESSING:
example: 1
type: number
ACTION REQUIRED:
example: 1
type: number
CLOSED:
example: 2
type: number
CANCELLED:
example: 1
type: number
partnerPatientId:
type: string
description: Partner patient ID that can be used for patient requests.
format: uuid
patientKey:
type: string
description: Patient key.
required:
- firstName
- lastName
- address
- dateOfBirth
- genderName
- phoneNumber
- primaryLanguage
- cumulativePatientStatus
- partnerPatientId
- patientKey
securitySchemes:
bearer:
scheme: bearer
bearerFormat: JWT
type: http
x-provenance:
method: searched
source: https://docs.predoc.ai/reference
harvested: '2026-10-14'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://docs.predoc.ai/reference/authcontroller_signin_v1.md
- https://docs.predoc.ai/reference/curatedpatientdatacontroller_getcuratedpatientdata_v1.md
- https://docs.predoc.ai/reference/documentcontroller_getpatientclinicalsummary_v1.md
- https://docs.predoc.ai/reference/patientcontroller_addrequesttoexistingpatient_v1.md
- https://docs.predoc.ai/reference/patientcontroller_createpatient_v2.md
- https://docs.predoc.ai/reference/patientcontroller_getavailablepatientchemistries_v1.md
- https://docs.predoc.ai/reference/patientcontroller_getpatientinformation_v1.md
- https://docs.predoc.ai/reference/patientcontroller_getpatientlabresultsbysearch_v1.md
- https://docs.predoc.ai/reference/patientcontroller_getpatientrequests_v1.md
- https://docs.predoc.ai/reference/patientcontroller_requestpatientclinicalsummary_v1.md
- https://docs.predoc.ai/reference/patientcontroller_searchpatientdocuments_v2.md
- https://docs.predoc.ai/reference/patientcontroller_searchpatientsbyinformation_v1.md
- https://docs.predoc.ai/reference/patientcontroller_updatepatientinformation_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientadditionalrecords_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientdocuments_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientdrugallergies_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientfacesheetoutput_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientfacesheets_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatienthiedocs_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientimagingresults_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientlabtests_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientmedications_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientotherrecords_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientprocedurenotes_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientproviderfacilitynotes_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientvaccinedocuments_v1.md
- https://docs.predoc.ai/reference/patientdocumentscontroller_getpatientvaccinerecords_v1.md
- https://docs.predoc.ai/reference/recorduploadcontroller_getanonymousrecorduploadstatus_v1.md
- https://docs.predoc.ai/reference/recorduploadcontroller_uploadanonymousrecord_v1.md
- https://docs.predoc.ai/reference/recorduploadcontroller_uploadrecordv2_v2.md
- https://docs.predoc.ai/reference/requestcontroller_createrecordrequestv2_v2.md
- https://docs.predoc.ai/reference/requestcontroller_facesheetconfigs_v1.md
- https://docs.predoc.ai/reference/requestcontroller_getlistofrecordrequests_v2.md
- https://docs.predoc.ai/reference/requestcontroller_updateexistingrecordrequest_v1.md
- https://docs.predoc.ai/reference/retrievalcontroller_closeretrieval_v1.md
- https://docs.predoc.ai/reference/retrievalcontroller_getretrieval_v1.md
- https://docs.predoc.ai/reference/webhookconfigurationcontroller_createwebhookconfiguration_v1.md
- https://docs.predoc.ai/reference/webhookconfigurationcontroller_deletewebhookconfiguration_v1.md
- https://docs.predoc.ai/reference/webhookconfigurationcontroller_listwebhookconfigurations_v1.md
- https://docs.predoc.ai/reference/webhookconfigurationcontroller_updatewebhookconfiguration_v1.md
merge:
pages: 40
deduped: 88
conflicts_kept_first: 0