### Kipu API GET Request Canonical String Example Source: https://api.kipuapi.com/api-docs/index Shows an example of a canonical string for GET requests, highlighting the use of two initial commas and the inclusion of the request_uri with all query parameters. This string is crucial for generating the correct API signature for GET requests. ```text ,,/api/patients/census?phi_level=high &app_id=OFZdZaTiCgy5gZnjnpo-Y7pFNoQvgsLJvtQSPJpWJNM,Thu,07 Nov 2019 20:08:59 GMT ``` -------------------------------- ### Multi-part POST Request Example Source: https://api.kipuapi.com/api-docs/index This example demonstrates how to construct a multi-part POST request for submitting document data, including recipient information, patient details, insurance, contacts, and attachments. It shows the boundary separation and content disposition for each part. ```http --MultipartBoundary Content-Disposition: form-data; name="document[recipient_id]" --MultipartBoundary Content-Disposition: form-data; name="document[data][first_name]" John --MultipartBoundary Content-Disposition: form-data; name="document[data][last_name]" Doe --MultipartBoundary Content-Disposition: form-data; name="document[data][dob]" 1909-09-09 --MultipartBoundary Content-Disposition: form-data; name="document[data][insurances_attributes][0][insurance_company]" Sample Insurance Company --MultipartBoundary Content-Disposition: form-data; name="document[data][insurances_attributes][0][subscriber_first_name]" John --MultipartBoundary Content-Disposition: form-data; name="document[data][insurances_attributes][0][subscriber_last_name]" Doe --MultipartBoundary Content-Disposition: form-data; name="document[data][insurances_attributes][0][origin_id]" 1 --MultipartBoundary Content-Disposition: form-data; name="document[data][patient_contacts_attributes][0][first_name]" Richard James --MultipartBoundary Content-Disposition: form-data; name="document[data][patient_contacts_attributes][0][last_name]" Perez Montero --MultipartBoundary Content-Disposition: form-data; name="document[data][patient_contacts_attributes][0][phone]" (555) 555-5555 --MultipartBoundary Content-Disposition: form-data; name="document[attachments_attributes][0][attachment_name]" 12345 --MultipartBoundary Content-Disposition: form-data; name="document[attachments_attributes][0][attachment_evaluation_item_id]" patient_image --MultipartBoundary Content-Disposition: form-data; name="document[attachments_attributes][0][attachment]"; filename="client_id.jpg" Content-type: image/jpeg --MultipartBoundary-- ``` -------------------------------- ### Referrer Endpoint Source: https://api.kipuapi.com/api-docs/index Documentation for the Referrers GET endpoint. ```APIDOC ## GET /websites/api_kipuapi_api-docs/referrers ### Description Retrieves a list of referrers. ### Method GET ### Endpoint /referrers ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. ### Response #### Success Response (200) - (List of referrers) ### Response Example { "referrers": [ { "id": "R1", "name": "Dr. Smith" } ] } ``` -------------------------------- ### Location Endpoint Source: https://api.kipuapi.com/api-docs/index Documentation for the Locations GET endpoint, including parameters for including building information. ```APIDOC ## GET /websites/api_kipuapi_api-docs/locations ### Description Retrieves a list of locations. ### Method GET ### Endpoint /locations ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. - **include_buildings** (boolean) - Optional - Include buildings information. ### Response #### Success Response (200) - (List of locations with optional building information) ### Response Example { "locations": [ { "id": "L1", "name": "Main Campus", "buildings": [ { "id": "B1", "name": "Building A" } ] } ] } ``` -------------------------------- ### Locations (GET) Source: https://api.kipuapi.com/api-docs/index Retrieves a list of available locations within the system. ```APIDOC ## GET /api/locations ### Description Retrieves a list of all available locations configured in the system. This endpoint is useful for identifying valid location IDs for other API calls. ### Method GET ### Endpoint /api/locations ### Response #### Success Response (200) - **data** (array) - A list of location objects. - **location_id** (string) - The unique identifier for the location. - **location_name** (string) - The name of the location. #### Response Example ```json { "status": "Success", "data": [ { "location_id": "loc_123", "location_name": "Main Facility" } ] } ``` ``` -------------------------------- ### Kipu API POST Request Canonical String Example Source: https://api.kipuapi.com/api-docs/index Provides a sample canonical string for POST requests, demonstrating the required sequence of Content-Type, Content-MD5, request_uri, and Date headers. This string is a precursor to generating the API signature. ```text application/json,VpofNeoRAzRvCD/YjO1mSw==,/api/patients,Wed, 06 Nov 2019 15:38:34 GMT ``` -------------------------------- ### Kipu API v3 - Authentication and Headers Source: https://api.kipuapi.com/api-docs/index Details on authentication, required headers for POST and GET requests, and base URL for Kipu API v3. ```APIDOC ## Kipu API v3 Documentation ### Base URL `https://api.kipuapi.com` ### Credentials Kipu provides: - `access_id` - `secret_key` - `app_id` (also referred to as `recipient_id`) ### Authentication All requests require an encoded signature (HMAC SHA-1 or SHA256). #### Authorization Header Supports **HMAC-SHA256** (recommended) and **HMAC-SHA1**. **HMAC-SHA256 (Recommended):** `APIAuth-HMAC-SHA256 {access_id}:{Base64 Encoded SHA256 HMAC Signature}` Example: `APIAuth-HMAC-SHA256 8s6lf46sG7UkIco9zIPM1S0VdoYSexampleauthJAn0:vIu4TeSNSA3kv/OlTO68oSExIEo=` **HMAC-SHA1 (v1-v3 only):** `APIAuth {access_id}:{Base64 Encoded SHA1 HMAC Signature}` Example: `APIAuth 8s6lf46sG7UkIco9zIPM1S0VdoYSexampleauthJAn0:vIu4TeSNSA3kv/OlTO68oSExIEo=` ### Request Headers #### POST Requests - `Accept`: `application/vnd.kipusystems+json; version=3` (Constant) - `Date`: RFC 822 updated by RFC 1123 format (e.g., `Wed, 06 Nov 2019 15:38:34 GMT`) - `Authorization`: As described above. - `Content-Type`: `application/json` or `multipart/form-data; boundary=BOUNDARY` - `Content-MD5`: 24 character Base64 encoded MD5 Digest of the request body (e.g., `VpofNeoRAzRvCD/YjO1mSw==`) #### GET Requests - `Accept`: `application/vnd.kipusystems+json; version=3` (Constant) - `Date`: RFC 822 updated by RFC 1123 format (e.g., `Thu, 07 Nov 2019 20:08:59 GMT`) - `Authorization`: As described above. ### Calculating the 'Encoded Signature' 1. **Build a canonical string.** 2. **Create an HMAC SHA1/SHA256 encrypted hash** of the canonical string and `secret_key`. 3. **Perform a strict Base64 encoding** of the HMAC hash. #### Building the Canonical String **For POST Requests:** `Content-Type,Content-MD5,request_uri,Date` Example: `application/json,VpofNeoRAzRvCD/YjO1mSw==,/api/patients,Wed, 06 Nov 2019 15:38:34 GMT` **For GET Requests:** `,,request_uri,Date` Example: `,,/api/patients/census?phi_level=high &app_id=OFZdZaTiCgy5gZnjnpo-Y7pFNoQvgsLJvtQSPJpWJNM,Thu,07 Nov 2019 20:08:59 GMT` **Notes:** - Strict sequence and no spaces around commas. - GET requests require two initial commas. - `request_uri` for GET requests must include all query parameters. - Do not include the body in a GET request. #### Request URI Format Include the full path and all query parameters (prefixed by `?` and separated by `&`). Example: `/api/patients/census?app_id=OFZdZaTiCgy5gZnjnpo-Y7pFNoQvgsLJvtQSPJpWJNM&phi_level=high` ### Creating the HMAC Hash Use your platform's library to create an HMAC SHA1/SHA256 hash of the canonical string and your `secret_key`. **JavaScript Example (CryptoJS):** `hmac = CryptoJS.HmacSHA256(canonical_string, secret_key)` ``` -------------------------------- ### GET /group_sessions Source: https://api.kipuapi.com/api-docs/index New endpoints for listing and retrieving group sessions. ```APIDOC ## GET /group_sessions ### Description Lists all available group sessions. ### Method GET ### Endpoint /group_sessions ``` -------------------------------- ### GET /scheduler/appointment_types Source: https://api.kipuapi.com/api-docs/index Lists all available appointment types. This endpoint helps in understanding the different categories of appointments. ```APIDOC ## GET /scheduler/appointment_types ### Description Lists all available appointment types. This endpoint helps in understanding the different categories of appointments. ### Method GET ### Endpoint /scheduler/appointment_types ### Response #### Success Response (200) - **appointment_types** (array) - A list of appointment type objects. - **id** (string) - The unique identifier for the appointment type. - **name** (string) - The name of the appointment type (e.g., 'New Patient Visit', 'Follow-up'). #### Response Example ```json { "appointment_types": [ { "id": "type_a", "name": "New Patient Visit" }, { "id": "type_b", "name": "Follow-up" } ] } ``` #### Error Responses - **401 Unauthorized**: Authentication signature was missing or incorrect. - **404 Not Found**: The URI requested is invalid or the resource requested, such as a user, does not exist. ``` -------------------------------- ### Patient Colors Endpoint Source: https://api.kipuapi.com/api-docs/index Documentation for the Patient Colors GET endpoint. ```APIDOC ## GET /websites/api_kipuapi_api-docs/patient_colors ### Description Retrieves patient color codes or settings. ### Method GET ### Endpoint /patient_colors ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. ### Response #### Success Response (200) - (Patient color information) ### Response Example { "patient_id": "P101", "color": "blue" } ``` -------------------------------- ### GET /scheduler/appointment_statuses Source: https://api.kipuapi.com/api-docs/index Lists all available appointment statuses. This endpoint is useful for understanding the different states an appointment can be in. ```APIDOC ## GET /scheduler/appointment_statuses ### Description Lists all available appointment statuses. This endpoint is useful for understanding the different states an appointment can be in. ### Method GET ### Endpoint /scheduler/appointment_statuses ### Response #### Success Response (200) - **statuses** (array) - A list of appointment status objects. - **id** (string) - The unique identifier for the status. - **name** (string) - The name of the status (e.g., 'Scheduled', 'Completed', 'Cancelled'). #### Response Example ```json { "statuses": [ { "id": "status_1", "name": "Scheduled" }, { "id": "status_2", "name": "Completed" } ] } ``` #### Error Responses - **401 Unauthorized**: Authentication signature was missing or incorrect. - **404 Not Found**: The URI requested is invalid or the resource requested, such as a user, does not exist. ``` -------------------------------- ### GET /appointments Source: https://api.kipuapi.com/api-docs/index Fetches a list of all appointments. This endpoint can be filtered by various query parameters to narrow down the results. ```APIDOC ## GET /appointments ### Description Fetches a list of all appointments. This endpoint can be filtered by various query parameters to narrow down the results. ### Method GET ### Endpoint /appointments ### Parameters #### Query Parameters - **patient_id** (string) - Optional - Filter appointments by patient ID. - **provider_id** (string) - Optional - Filter appointments by provider ID. - **user_id** (string) - Optional - Filter appointments by user ID. - **start_date** (string) - Optional - Filter appointments starting on or after this date (YYYY-MM-DD). - **end_date** (string) - Optional - Filter appointments ending on or before this date (YYYY-MM-DD). ### Response #### Success Response (200) - **appointments** (array) - A list of appointment objects. - **id** (string) - The unique identifier for the appointment. - **patient_id** (string) - The ID of the patient associated with the appointment. - **provider_id** (string) - The ID of the provider for the appointment. - **start_time** (string) - The start date and time of the appointment (ISO 8601 format). - **end_time** (string) - The end date and time of the appointment (ISO 8601 format). - **status** (string) - The current status of the appointment. #### Response Example ```json { "appointments": [ { "id": "appt_xyz", "patient_id": "pat_123", "provider_id": "prov_abc", "start_time": "2023-10-27T10:00:00Z", "end_time": "2023-10-27T10:30:00Z", "status": "scheduled" }, { "id": "appt_pqr", "patient_id": "pat_789", "provider_id": "prov_def", "start_time": "2023-10-28T11:00:00Z", "end_time": "2023-10-28T11:45:00Z", "status": "scheduled" } ] } ``` #### Error Responses - **401 Unauthorized**: Authentication signature was missing or incorrect. - **404 Not Found**: The URI requested is invalid or the resource requested, such as a user, does not exist. ``` -------------------------------- ### GET /scheduler/appointments Source: https://api.kipuapi.com/api-docs/index Lists all appointments managed by the scheduler. This endpoint provides a comprehensive view of scheduled appointments. ```APIDOC ## GET /scheduler/appointments ### Description Lists all appointments managed by the scheduler. This endpoint provides a comprehensive view of scheduled appointments. ### Method GET ### Endpoint /scheduler/appointments ### Parameters #### Query Parameters - **patient_id** (string) - Optional - Filter appointments by patient ID. - **provider_id** (string) - Optional - Filter appointments by provider ID. - **start_date** (string) - Optional - Filter appointments starting on or after this date (YYYY-MM-DD). - **end_date** (string) - Optional - Filter appointments ending on or before this date (YYYY-MM-DD). ### Response #### Success Response (200) - **appointments** (array) - A list of appointment objects. - **id** (string) - The unique identifier for the appointment. - **patient_id** (string) - The ID of the patient associated with the appointment. - **provider_id** (string) - The ID of the provider for the appointment. - **start_time** (string) - The start date and time of the appointment (ISO 8601 format). - **end_time** (string) - The end date and time of the appointment (ISO 8601 format). - **status** (string) - The current status of the appointment. #### Response Example ```json { "appointments": [ { "id": "appt_xyz", "patient_id": "pat_123", "provider_id": "prov_abc", "start_time": "2023-10-27T10:00:00Z", "end_time": "2023-10-27T10:30:00Z", "status": "scheduled" }, { "id": "appt_pqr", "patient_id": "pat_789", "provider_id": "prov_def", "start_time": "2023-10-28T11:00:00Z", "end_time": "2023-10-28T11:45:00Z", "status": "scheduled" } ] } ``` #### Error Responses - **401 Unauthorized**: Authentication signature was missing or incorrect. - **404 Not Found**: The URI requested is invalid or the resource requested, such as a user, does not exist. ``` -------------------------------- ### Patient Occupancy (GET) Source: https://api.kipuapi.com/api-docs/index Retrieves patient occupancy information. Supports filtering by various criteria and includes details about the patient's program level. ```APIDOC ## GET /api/patients/occupancy ### Description Retrieves information about patient occupancy within the facility. This endpoint can be used to find current patient assignments and details. ### Method GET ### Endpoint /api/patients/occupancy ### Parameters #### Query Parameters - **phi_level** (string) - Optional - Filters results based on the PHI level. ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. #### Response Example ```json { "status": "Success", "data": [ { "patient_id": "pat_456", "bed_name": "Bed 5", "phi_level": "Level 3" } ] } ``` ``` -------------------------------- ### Patient Endpoints Source: https://api.kipuapi.com/api-docs/index This section details various GET endpoints related to patient information, including admissions, census, care team, settings, and more. It also covers POST and PATCH for patient creation and updates. ```APIDOC ## GET /websites/api_kipuapi_api-docs/care_levels ### Description Retrieves information about care levels. ### Method GET ### Endpoint /care_levels ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. ### Response #### Success Response (200) - **casefile_id** (string) - Composite field of Patient {id}:{master_id}. - **gender_identity** (string) - The gender identity of the patient. ### Response Example { "casefile_id": "123:456", "gender_identity": "non-binary" } ## GET /websites/api_kipuapi_api-docs/patient_admissions ### Description Retrieves patient admission details. ### Method GET ### Endpoint /patient_admissions ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. - **page** (integer) - Optional - Specify page number of current result list. - **per** (integer) - Optional - Number of results to return per page. ### Response #### Success Response (200) - **casefile_id** (string) - Composite field of Patient {id}:{master_id}. - **gender_identity** (string) - The gender identity of the patient. - **insurance_priority** (string) - Priority of insurance. - **payor_type** (string) - Type of payor. - **insurance_plan_period** (string) - Period of the insurance plan. - **group_plan_name** (string) - Name of the group plan. - **effective_date** (string) - Effective date of the insurance. - **termination_date** (string) - Termination date of the insurance. - **ext_payor_id** (string) - External payor ID. - **ext_id_mappings** (object) - External ID mappings. - **insurance_detail** (object) - Detailed insurance information. - **demographics_detail** (object) - Detailed demographic information. - **patient_status_detail** (object) - Detailed patient status information. - **gender** (string) - The gender of the patient. - **race** (string) - The race of the patient. - **address_street** (string) - Street address. - **address_street2** (string) - Street address line 2. - **address_city** (string) - City. - **state** (string) - State. - **address_zip** (string) - ZIP code. - **email** (string) - Email address. - **pre_admission_status** (string) - Pre-admission status. - **discharge_or_transition_id** (string) - Discharge or transition ID. - **discharge_or_transition_name** (string) - Discharge or transition name. - **discharge_type** (string) - Discharge type. - **discharge_type_code** (string) - Discharge type code. - **first_contact_name** (string) - Name of the first contact. - **referrer_name** (string) - Name of the referrer. - **payment_method** (string) - Payment method. - **payment_method_category** (string) - Payment method category. - **created_at** (string) - Timestamp of creation. - **last_updated_at** (string) - Timestamp of last update. ### Response Example { "casefile_id": "123:456", "gender_identity": "male", "insurance_priority": "primary", "payor_type": "commercial", "insurance_plan_period": "monthly", "group_plan_name": "Sample Plan", "effective_date": "2023-01-01", "termination_date": "2023-12-31", "ext_payor_id": "EP12345", "ext_id_mappings": {}, "insurance_detail": {}, "demographics_detail": {}, "patient_status_detail": {}, "gender": "male", "race": "white", "address_street": "123 Main St", "address_street2": null, "address_city": "Anytown", "state": "CA", "address_zip": "90210", "email": "test@example.com", "pre_admission_status": "admitted", "discharge_or_transition_id": "D101", "discharge_or_transition_name": "Discharged Home", "discharge_type": "routine", "discharge_type_code": "RTN", "first_contact_name": "John Doe", "referrer_name": "Jane Smith", "payment_method": "insurance", "payment_method_category": "health_insurance", "created_at": "2023-01-15T10:00:00Z", "last_updated_at": "2023-01-15T10:00:00Z" } ## GET /websites/api_kipuapi_api-docs/patient_care_team ### Description Retrieves the patient care team. ### Method GET ### Endpoint /patient_care_team ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. ### Response #### Success Response (200) - **casefile_id** (string) - Composite field of Patient {id}:{master_id}. - **gender_identity** (string) - The gender identity of the patient. ### Response Example { "casefile_id": "123:456", "gender_identity": "female" } ## GET /websites/api_kipuapi_api-docs/patient_census ### Description Retrieves patient census data. ### Method GET ### Endpoint /patient_census ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. - **page** (integer) - Optional - Specify page number of current result list. - **per** (integer) - Optional - Number of results to return per page. ### Response #### Success Response (200) - **casefile_id** (string) - Composite field of Patient {id}:{master_id}. - **gender_identity** (string) - The gender identity of the patient. - **insurance_priority** (string) - Priority of insurance. - **payor_type** (string) - Type of payor. - **insurance_plan_period** (string) - Period of the insurance plan. - **group_plan_name** (string) - Name of the group plan. - **effective_date** (string) - Effective date of the insurance. - **termination_date** (string) - Termination date of the insurance. - **ext_payor_id** (string) - External payor ID. - **ext_id_mappings** (object) - External ID mappings. - **insurance_detail** (object) - Detailed insurance information. - **demographics_detail** (object) - Detailed demographic information. - **patient_status_detail** (object) - Detailed patient status information. - **gender** (string) - The gender of the patient. - **race** (string) - The race of the patient. - **address_street** (string) - Street address. - **address_street2** (string) - Street address line 2. - **address_city** (string) - City. - **state** (string) - State. - **address_zip** (string) - ZIP code. - **email** (string) - Email address. - **pre_admission_status** (string) - Pre-admission status. - **discharge_or_transition_id** (string) - Discharge or transition ID. - **discharge_or_transition_name** (string) - Discharge or transition name. - **discharge_type** (string) - Discharge type. - **discharge_type_code** (string) - Discharge type code. - **first_contact_name** (string) - Name of the first contact. - **referrer_name** (string) - Name of the referrer. - **payment_method** (string) - Payment method. - **payment_method_category** (string) - Payment method category. - **created_at** (string) - Timestamp of creation. - **last_updated_at** (string) - Timestamp of last update. ### Response Example { "casefile_id": "123:456", "gender_identity": "non-binary", "insurance_priority": "secondary", "payor_type": "medicaid", "insurance_plan_period": "monthly", "group_plan_name": "Medicaid Plan", "effective_date": "2023-02-01", "termination_date": "2024-01-31", "ext_payor_id": "EP67890", "ext_id_mappings": {}, "insurance_detail": {}, "demographics_detail": {}, "patient_status_detail": {}, "gender": "female", "race": "hispanic", "address_street": "456 Oak Ave", "address_street2": "Apt 2B", "address_city": "Otherville", "state": "NY", "address_zip": "10001", "email": "user@example.com", "pre_admission_status": "pending", "discharge_or_transition_id": "D102", "discharge_or_transition_name": "Transferred to Facility", "discharge_type": "medical", "discharge_type_code": "MED", "first_contact_name": "Robert Johnson", "referrer_name": "Sarah Lee", "payment_method": "medicaid", "payment_method_category": "government_insurance", "created_at": "2023-02-10T11:00:00Z", "last_updated_at": "2023-02-10T11:00:00Z" } ## GET /websites/api_kipuapi_api-docs/patient_find ### Description Finds patients based on specified criteria. ### Method GET ### Endpoint /patient_find ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. - **page** (integer) - Optional - Specify page number of current result list. - **per** (integer) - Optional - Number of results to return per page. ### Response #### Success Response (200) - **casefile_id** (string) - Composite field of Patient {id}:{master_id}. - **gender_identity** (string) - The gender identity of the patient. - **insurance_priority** (string) - Priority of insurance. - **payor_type** (string) - Type of payor. - **insurance_plan_period** (string) - Period of the insurance plan. - **group_plan_name** (string) - Name of the group plan. - **effective_date** (string) - Effective date of the insurance. - **termination_date** (string) - Termination date of the insurance. - **ext_payor_id** (string) - External payor ID. - **ext_id_mappings** (object) - External ID mappings. - **insurance_detail** (object) - Detailed insurance information. - **demographics_detail** (object) - Detailed demographic information. - **patient_status_detail** (object) - Detailed patient status information. - **gender** (string) - The gender of the patient. - **race** (string) - The race of the patient. - **address_street** (string) - Street address. - **address_street2** (string) - Street address line 2. - **address_city** (string) - City. - **state** (string) - State. - **address_zip** (string) - ZIP code. - **email** (string) - Email address. - **pre_admission_status** (string) - Pre-admission status. - **discharge_or_transition_id** (string) - Discharge or transition ID. - **discharge_or_transition_name** (string) - Discharge or transition name. - **discharge_type** (string) - Discharge type. - **discharge_type_code** (string) - Discharge type code. - **first_contact_name** (string) - Name of the first contact. - **referrer_name** (string) - Name of the referrer. - **payment_method** (string) - Payment method. - **payment_method_category** (string) - Payment method category. - **created_at** (string) - Timestamp of creation. - **last_updated_at** (string) - Timestamp of last update. ### Response Example { "casefile_id": "123:456", "gender_identity": "male", "insurance_priority": "primary", "payor_type": "commercial", "insurance_plan_period": "monthly", "group_plan_name": "Sample Plan", "effective_date": "2023-01-01", "termination_date": "2023-12-31", "ext_payor_id": "EP12345", "ext_id_mappings": {}, "insurance_detail": {}, "demographics_detail": {}, "patient_status_detail": {}, "gender": "male", "race": "white", "address_street": "123 Main St", "address_street2": null, "address_city": "Anytown", "state": "CA", "address_zip": "90210", "email": "test@example.com", "pre_admission_status": "admitted", "discharge_or_transition_id": "D101", "discharge_or_transition_name": "Discharged Home", "discharge_type": "routine", "discharge_type_code": "RTN", "first_contact_name": "John Doe", "referrer_name": "Jane Smith", "payment_method": "insurance", "payment_method_category": "health_insurance", "created_at": "2023-01-15T10:00:00Z", "last_updated_at": "2023-01-15T10:00:00Z" } ## GET /websites/api_kipuapi_api-docs/patient_occupancy ### Description Retrieves patient occupancy data. ### Method GET ### Endpoint /patient_occupancy ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. ### Response #### Success Response (200) - **casefile_id** (string) - Composite field of Patient {id}:{master_id}. - **gender_identity** (string) - The gender identity of the patient. ### Response Example { "casefile_id": "123:456", "gender_identity": "other" } ## GET /websites/api_kipuapi_api-docs/patient_utilization_reviews ### Description Retrieves patient utilization reviews. ### Method GET ### Endpoint /patient_utilization_reviews ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. ### Response #### Success Response (200) - **casefile_id** (string) - Composite field of Patient {id}:{master_id}. - **gender_identity** (string) - The gender identity of the patient. ### Response Example { "casefile_id": "123:456", "gender_identity": "prefer not to say" } ## POST /websites/api_kipuapi_api-docs/patient_create ### Description Creates a new patient record. ### Method POST ### Endpoint /patient_create ### Parameters #### Request Body - **insurance_priority** (string) - Priority of insurance. - **payor_type** (string) - Type of payor. - **insurance_plan_period** (string) - Period of the insurance plan. - **group_plan_name** (string) - Name of the group plan. - **effective_date** (string) - Effective date of the insurance. - **termination_date** (string) - Termination date of the insurance. - **ext_payor_id** (string) - External payor ID. - **pre_admission_status_id** (string) - ID of the pre-admission status. - **subscriber_address_street** (string) - Street address of the subscriber. - **subscriber_address_street2** (string) - Street address line 2 of the subscriber. - **subscriber_address_city** (string) - City of the subscriber's address. - **subscriber_address_zip** (string) - ZIP code of the subscriber's address. - **subscriber_address_state** (string) - State of the subscriber's address. - **subscriber_address_country** (string) - Country of the subscriber's address. - **gender_identity_short** (string) - Short representation of gender identity. Accepts `gender_ident_other_non_binary`, `gender_ident_other_no_answer`, `gender_ident_other_not_sure`. - **attachment_patient_process_id** (string) - Specify a process tab to use for a generic attachment. - **ext_id_mappings_attributes** (object) - Attributes for third-party ID mappings. ### Request Example { "insurance_priority": "primary", "payor_type": "commercial", "insurance_plan_period": "monthly", "group_plan_name": "Sample Plan", "effective_date": "2023-01-01", "termination_date": "2023-12-31", "ext_payor_id": "EP12345", "pre_admission_status_id": "PS101", "subscriber_address_street": "789 Pine Ln", "subscriber_address_street2": null, "subscriber_address_city": "Metropolis", "subscriber_address_zip": "10002", "subscriber_address_state": "NY", "subscriber_address_country": "USA", "gender_identity_short": "gender_ident_other_non_binary", "attachment_patient_process_id": "AP101", "ext_id_mappings_attributes": { "external_system_id": "EXTID987" } } ## PATCH /websites/api_kipuapi_api-docs/patient_update ### Description Updates an existing patient record. ### Method PATCH ### Endpoint /patient_update ### Parameters #### Request Body - **gender_identity_short** (string) - Short representation of gender identity. Accepts `gender_ident_other_non_binary`, `gender_ident_other_no_answer`, `gender_ident_other_not_sure`. ### Response #### Success Response (200) - (Details of updated patient record) ### Response Example { "message": "Patient updated successfully." } ## GET /websites/api_kipuapi_api-docs/patient_settings ### Description Retrieves patient settings. ### Method GET ### Endpoint /patient_settings ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. ### Response #### Success Response (200) - **casefile_id** (string) - Composite field of Patient {id}:{master_id}. - **gender_identity** (string) - The gender identity of the patient. ### Response Example { "casefile_id": "123:456", "gender_identity": "male" } ## GET /websites/api_kipuapi_api-docs/patient_show ### Description Retrieves details for a specific patient. ### Method GET ### Endpoint /patient_show ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. ### Response #### Success Response (200) - **casefile_id** (string) - Composite field of Patient {id}:{master_id}. - **gender_identity** (string) - The gender identity of the patient. - **insurance_detail** (object) - Detailed insurance information. - **demographics_detail** (object) - Detailed demographic information. - **patient_status_detail** (object) - Detailed patient status information. ### Response Example { "casefile_id": "123:456", "gender_identity": "female", "insurance_detail": {}, "demographics_detail": {}, "patient_status_detail": {} } ## GET /websites/api_kipuapi_api-docs/patient_processes ### Description Retrieves patient processes. ### Method GET ### Endpoint /patient_processes ### Parameters #### Query Parameters - **app_id** (string) - Optional - Also referred to as recipient_id. - **process_details** (boolean) - Optional - Display show_forms attribute. ### Response #### Success Response (200) - (Details of patient processes) ### Response Example { "processes": [ { "id": "P101", "name": "Intake Form", "show_forms": true } ] } ``` -------------------------------- ### GET /patients/evaluations/index Source: https://api.kipuapi.com/api-docs/index Enhancements to the Patient Evaluations Index GET endpoint for filtering and response attributes. ```APIDOC ## GET /patients/evaluations/index ### Description Retrieves a list of patient evaluations. This endpoint now supports filtering by evaluation content and patient process ID, and includes the evaluation content in the response. ### Method GET ### Endpoint /patients/evaluations/index ### Parameters #### Query Parameters - **evaluation_content** (string) - Required - The evaluation content value to filter by. - **patient_process_id** (string) - Required - The patient process ID to filter by. #### Response #### Success Response (200) - **evaluation_content** (string) - The content of the evaluation. ``` -------------------------------- ### GET /appointments Source: https://api.kipuapi.com/api-docs/index Updates to the List all Appointments GET endpoint, adding parameters for date range filtering. ```APIDOC ## GET /appointments ### Description Retrieves a list of all appointments. This endpoint now allows filtering appointments by a specified date range. ### Method GET ### Endpoint /appointments ### Parameters #### Query Parameters - **start_date** (string) - Optional - Starting date for the appointment range (Example: 2018-12-01). - **end_date** (string) - Optional - Ending date for the appointment range (Example: 2018-12-01). ``` -------------------------------- ### GET /patients/census Source: https://api.kipuapi.com/api-docs/index Enhancements to the Patient Census GET endpoint, allowing filtering by care team role and user ID. ```APIDOC ## GET /patients/census ### Description Retrieves the patient census. This endpoint now supports filtering by care team role and specific user IDs. ### Method GET ### Endpoint /patients/census ### Parameters #### Query Parameters - **care_team_role** (string) - Required - The care team role to scope the census by. - **user_id** (string) - Required - The user ID to scope the census by. ``` -------------------------------- ### List all Resources Source: https://api.kipuapi.com/api-docs/index Retrieves a list of all available resources. ```APIDOC ## GET /resources ### Description Retrieves a list of all available resources, such as rooms or equipment. ### Method GET ### Endpoint /resources ### Parameters #### Query Parameters - **enabled** (boolean) - Optional - Filters resources by their enabled status. - **category_type** (string) - Optional - Filters resources by their category type. #### Request Body ### Request Example ### Response #### Success Response (200) - **resource_id** (integer) - The unique identifier of the resource. - **name** (string) - The name of the resource. - **category** (string) - The category of the resource. - **enabled** (boolean) - Indicates if the resource is currently enabled. #### Response Example { "data": [ { "resource_id": 501, "name": "Conference Room A", "category": "Room", "enabled": true }, { "resource_id": 502, "name": "ECG Machine", "category": "Equipment", "enabled": true } ] } ``` -------------------------------- ### GET /patients/{patient_id}/evaluations Source: https://api.kipuapi.com/api-docs/index Enhancements to the Patient's Patient Evaluations List GET endpoint for filtering and response attributes. ```APIDOC ## GET /patients/{patient_id}/evaluations ### Description Retrieves a list of patient evaluations for a specific patient. This endpoint now supports filtering by evaluation content and patient process ID, and includes the evaluation content in the response. ### Method GET ### Endpoint /patients/{patient_id}/evaluations ### Parameters #### Query Parameters - **evaluation_content** (string) - Required - The evaluation content value to filter by. - **patient_process_id** (string) - Required - The patient process ID to filter by. #### Response #### Success Response (200) - **evaluation_content** (string) - The content of the evaluation. ``` -------------------------------- ### Resources API Source: https://api.kipuapi.com/api-docs/index Endpoint to list all available resources. ```APIDOC ## GET /scheduler/resources ### Description List all resources. ### Method GET ### Endpoint /scheduler/resources ``` -------------------------------- ### GET /users/{id} Source: https://api.kipuapi.com/api-docs/index Updates to the Fetch User GET endpoint, including parameters to include restricted patients and attributes for restricted patients. ```APIDOC ## GET /users/{id} ### Description Fetches details for a specific user. This endpoint now supports a flag to include restricted patients and returns attributes related to restricted patients. ### Method GET ### Endpoint /users/{id} ### Parameters #### Query Parameters - **include_restrictions** (boolean) - Optional - A boolean flag to include restricted patients in the response. #### Response #### Success Response (200) - **restricted_patients** (array) - A list of restricted patients associated with the user. ``` -------------------------------- ### GET /patients/{id} Source: https://api.kipuapi.com/api-docs/index Enhancements to the Fetch Patient GET endpoint, including options to include IDs for related resources and retrieve specific ID fields. ```APIDOC ## GET /patients/{id} ### Description Fetches details for a specific patient. This endpoint now supports including IDs for various related resources and provides specific ID fields for insurances, external mappings, and external applications. ### Method GET ### Endpoint /patients/{id} ### Parameters #### Query Parameters - **include_ids** (boolean) - Optional - Includes database IDs for ext_id_mappings, insurances, and external_apps. #### Response #### Success Response (200) - **insurances** (array) - - **id** (string) - The ID of the insurance. - **ext_id_mappings** (array) - - **id** (string) - The ID of the external ID mapping. - **external_apps** (array) - - **id** (string) - The ID of the external application. ``` -------------------------------- ### Settings API Source: https://api.kipuapi.com/api-docs/index Endpoint to list all payors. ```APIDOC ## GET /settings/payors ### Description List all payors. ### Method GET ### Endpoint /settings/payors ```