# Orange County Documentaion
### A. Legacy
#### I. Modules
* Registration
* Case Filing
* Subsequent Filing for existing case
* Unlawful detainer case
* Drafts
#### II. Court Requirements
* XML formatted data should be submitted
* Aysnchronous process for;
* Court filing responses
* Court details such as:
* Fee's
* Location
* States
* Validations
* Attorney validation
* Filed details validation
* Whitelisted IP address from the Court
#### III. Data process
* Fill up the whole filing details
* Uploaded attachments are saved in the Hosting's storage
* Payment amount will be determined by Court Location
* Note: returned by the court api's
* Legacy will require user to provide credit card details
* Note: Credit card / Paypal
* Filed case will be in status of:
* Pending
* In-Review (court api validation)
* IN-Review (Court - Clerk personnel)
* Approved
* Court returns a Base64 (PDF) with stamp
#### IV. Court Endpoint
* https://ocscefm.occourts.org/axis/services/EfmWebService
#### V. Notifications
* Emails
* Registration
* Case file
* Added members for case
### B. Re-vamped Legacy as API
* #### Missing support for:
* Attorney validation
* Filed details validation
* XML data submission
* Front end
* #### Details
* CodeIgniter REST API v3
* AWS Elastic Beanstalk
* GitHub
* MSSQL - AWS RDS
* ### New Endpoints
## DOCUMENT
Get the document of specific case
### GET /internal/document/(:caseId)
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"document_id": 5181,
"data": "NULL",
"name": "Notice",
"DocumentGuid": "57FE7C64-D87D-408C-B09B-ADC58FB5899B"
}
```
### PATCH /internal/document/change_document
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| document_id | string | Required. |
| data | string | Required |
| file_size | string | Required |
```json=
{
"document_id": "5181",
"data": "NULL",
"file_size": "85758",
}
```
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"document_id": 5181,
"efiling_id": 3259,
"document_type_id": 233,
"name": "Notice",
"description": "Notices",
"data": "NULL",
"file_size": 85758,
"attachment_type_id": 1,
"created": "2013-12-18 09:08:55.327",
"modified": "2020-09-09 02:04:15.000",
"ref_file_name": "Notice - Other",
"ref_file_extension": "pdf",
"parent_document_id": null,
"DocumentGuid": "57FE7C64-D87D-408C-B09B-ADC58FB5899B",
"split_document_id": null
}
```
### POST /internal/document/set
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| document_id | string | Required. |
| data | string | Required |
| file_size | string | Required |
```json=
{
"efiling_id": 3259,
"document_type_id": 233,
"name": "Notice",
"description": "Notices",
"data": "NULL",
"file_size": 85758,
"attachment_type_id": 1,
}
```
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"document_id": 5181,
"efiling_id": 3259,
"document_type_id": 233,
"name": "Notice",
"description": "Notices",
"data": "NULL",
"file_size": 85758,
"attachment_type_id": 1,
"created": "2013-12-18 09:08:55.327",
"modified": "2020-09-09 02:04:15.000",
"ref_file_name": "Notice - Other",
"ref_file_extension": "pdf",
"parent_document_id": null,
"DocumentGuid": "57FE7C64-D87D-408C-B09B-ADC58FB5899B",
"split_document_id": null
}
```
## RECEIPT
Get the document of specific case
### GET /internal/receipts/(:email)
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"email": 5181,
"data": "NULL",
"name": "Notice",
"DocumentGuid": "57FE7C64-D87D-408C-B09B-ADC58FB5899B"
}
```
### GET /internal/receipt/(:document_id)
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"email": 5181,
"data": "NULL",
"name": "Notice",
"DocumentGuid": "57FE7C64-D87D-408C-B09B-ADC58FB5899B"
}
```
### POST /internal/document/set
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| response_id | string | Required. |
| name | string | Required |
| data | string | Required |
| response_key | string | Required |
```json=
{
"response_id": 999,
"name": "Complaint",
"data": "",
"response_key": "5194",
}
```
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"receipt_document_id": 259476,
"asynchronous_response_id": 999,
"name": "Complaint",
"data": "",
"created": "2020-08-14 07:46:16.033",
"modified": "2020-08-14 07:46:16.033",
"response_key": "5194",
"DocumentGuid": "077DE186-AABE-4305-98AF-E1E356903B57"
}
```
## COURT
Get the court details
### GET /internal/court/location/(:court_key)
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"court_division_id": 648,
"name": "Superior Court of California, County of Orange - Probate Central Justice Center",
"description": null,
"court_key": "USCAOrangeSuperiorProbateLimitedconservatorshipofpersonandestateCentralJusticeCenter",
"organization_key": "USCAOrangeSuperior",
"court_type": "Superior",
"division": "Probate",
"subdivision": "Limited conservatorship of person and estate",
"court_code": "30",
"court_id": 1,
"location": "Central Justice Center",
"purged": 0,
"plugin_id": null,
"enabled": 1,
"modified": "2020-01-02 09:33:27.910",
"created": "2013-11-18 17:47:31.097"
}
```
### GET /internal/court/(:court_key)
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"court_division_id": 1,
"division": "Civil - Unlimited"
}
```
## CASE TYPE
### GET /internal/case/division/(:case_type)
#### [small-claims | probate | mental-health | limited | unlimited]
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"court_division_id": 1,
"name": "Superior Court of California, County of Orange - Civil - Unlimited Civil Complex Center",
"description": null,
"court_key": "USCAOrangeSuperiorCivilUnlimitedConstructionDefectCivilComplexCenter",
"organization_key": "USCAOrangeSuperior",
"court_type": "Superior",
"division": "Civil - Unlimited",
"subdivision": "Construction Defect",
"court_code": "30",
"court_id": 1,
"location": "Civil Complex Center",
"purged": 0,
"plugin_id": 1,
"enabled": 1,
"modified": "2020-01-02 11:25:09.077",
"created": "2010-12-17 18:48:04.160"
}
```
## PARTY
### GET /internal/efilling/party/(:party_id)
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"court_division_id": 1,
"division": "Civil - Unlimited"
}
```
### PATCH /internal/efilling/party/change_org
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| party_id | string | Required. |
| organization_key | string | Required |
```json=
{
"party_id": 19539,
"organization_key": 20410850,
}
```
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"party_id": 19539,
"role_type_id": null,
"first_name": "NANCY",
"middle_name": "",
"last_name": "NGUYEN",
"organization_name": null,
"bar_number": null,
"party_type_id": 2,
"party_name_type_id": null,
"organization_type_id": null,
"email": "jrichards@rapidlegal.com",
"ccms_id": "20410850",
"suffix_type_id": null,
"contact_name": null,
"modified": "2013-12-18 09:07:58.323",
"created": "2013-12-18 09:07:58.323",
"is_allow_delete": 0,
"assoc_ccms_id": "73873519",
"ShouldWaiveFee": 0,
"CanEServe": 1
}
```
## ATTORNEY
### POST /internal/attorney/set
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| first_name | string | Required. |
| middle_name | string | Required |
| last_name | string | Required |
| organization_name | string | |
| bar_number | string | |
| active | string | Required |
| email | string | Required |
```json=
{
"first_name": "Eduardo",
"middle_name": "Quijano",
"last_name": "Quintos",
"organization_name": "CodeDevlopr",
"bar_number": 200-20201999,
"active": 1,
"email": "eduardo.quintos23@gmail.com"
}
```
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"attorney_id": 1,
"first_name": "Eduardo",
"middle_name": "Quijano",
"last_name": "Quintos",
"organization_name": "CodeDev",
"bar_number": "200-20201999",
"active": 1,
"suffix_type_id": null,
"ccms_id": null,
"modified": "2020-08-10 17:19:51.000",
"created": "2020-08-10 17:19:51.000",
"Email": null
}
```
### PATCH /internal/attorney/update
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| attorney_id | string | Required. |
| first_name | string | Required. |
| middle_name | string | Required |
| last_name | string | Required |
| organization_name | string | |
| bar_number | string | |
| active | string | Required |
| email | string | Required |
```json=
{
"attorney_id": 8,
"first_name": "Eduardo",
"middle_name": "Quijano",
"last_name": "Quintos",
"organization_name": "CodeDevlopr",
"bar_number": 200-20201999,
"active": 1,
"email": "eduardo.quintos23@gmail.com"
}
```
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"attorney_id": 1,
"first_name": "Eduardo",
"middle_name": "Quijano",
"last_name": "Quintos",
"organization_name": "CodeDev",
"bar_number": "200-20201999",
"active": 0,
"suffix_type_id": null,
"ccms_id": null,
"modified": "2020-09-09 03:59:08.000",
"created": "2020-08-10 17:19:51.000",
"Email": "eduardo.quintos23@gmail.com"
}
```
## SUBSCRIPTIONS
### GET /internal/subscription/(:subscription_id)
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"court_division_id": 1,
"division": "Civil - Unlimited"
}
```
### POST /internal/subscription/set
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| userID | string | Required. |
| type | string | Required |
| startDate | datetime | Required |
| endDate | datetime | Required |
| status | | |
| promo | string | |
```json=
{
"userID": 3272,
"type": 1,
"startDate": 2013-12-18 09:08:55.327,
"endDate": 2013-12-18 09:08:55.327,
"status": 200-20201999,
"status": 0
"promo": 0
}
```
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"userID": "3272 ",
"type": 1,
"startDate": "2013-12-18 09:08:55.327",
"endDate": "2013-12-18 09:08:55.327",
"status": "0",
"promo": 0
}
```
## FEES
### GET /internal/fee/type
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
{
"FeeTypeID": 1,
"FeeTypeCode": "ALN",
"FeeDescription": "Processing fee"
},
{
"FeeTypeID": 2,
"FeeTypeCode": "COURT",
"FeeDescription": "Court eFiling fee"
},
{
"FeeTypeID": 3,
"FeeTypeCode": "ESERVE",
"FeeDescription": "Eservice fee"
},
{
"FeeTypeID": 4,
"FeeTypeCode": "PROCFEE",
"FeeDescription": "Convenience charge"
}
}
```
### POST /internal/fee/set
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| efiling_id | string | Required. |
| quantity | string | Required |
| fee_id | string | Required |
```json=
{
"efiling_id": 3253,
"quantity": 1,
"fee_id": 325
}
```
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"efiling_id": "3253 ",
"quantity": 1,
"fee_id": 325,
"modified": 2013-12-18 09:08:55.327,
"created": 2020-09-09 04:09:44,
}
```
## BILLING HISTORY
### POST /internal/billing/set
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| OrderID | string | Required. |
| userpin | string | Required. |
| Date | datetime | Required |
| Amount | string | Required |
| Comments | string | |
| AmountR | string | |
| CardHolderName | string | Required |
```json=
{
"OrderID": 000095067B5845E1A3E9CA76BA35EEE,
"userpin": B6HZ25XBMVM5,
"Date": 2019-12-16 14:49:42.030,
"Amount": 225.0000,
"Comments": 100737|COURT,
"AmountR": 0.0000,
"CardHolderName": "Internal Billing"
}
```
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"attorney_id": 1,
"first_name": "Eduardo",
"middle_name": "Quijano",
"last_name": "Quintos",
"organization_name": "CodeDev",
"bar_number": "200-20201999",
"active": 0,
"suffix_type_id": null,
"ccms_id": null,
"modified": "2020-09-09 03:59:08.000",
"created": "2020-08-10 17:19:51.000",
"Email": "eduardo.quintos23@gmail.com"
}
```
## TRANSACTIONS
### GET /internal/transaction/(:transactionId)
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"OrderID": 000095067B5845E1A3E9CA76BA35B1dd,
"MStatus": success,
"txntype": Authorization,
"cardtype": ax,
"cardnumber": XX1111,
"merchtxn": 54F9427EC517,
"custtxn": 54F9427EC517,
"auxmsg": "Approved",
"cardexp": 0120,
"authcode": 54F942,
"actioncode": 0,
"refcode": 373730B60AA
}
```
### POST /internal/transaction/set
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| OrderID | string | Required. |
| MStatus | string | Required. |
| txntype | datetime | Required |
| cardtype | string | Required |
| cardnumber | string | Required |
| merchtxn | string |Required |
| custtxn | string | Required |
| auxmsg | string | Required |
| cardexp | string | Required |
| authcode | string | Required |
| actioncode | string | Required |
| refcode | string | Required |
```json=
{
"OrderID": 000095067B5845E1A3E9CA76BA35B1dd,
"MStatus": success,
"txntype": Authorization,
"cardtype": ax,
"cardnumber": XX1111,
"merchtxn": 54F9427EC517,
"custtxn": 54F9427EC517,
"auxmsg": "Approved",
"cardexp": 0120,
"authcode": 54F942,
"actioncode": 0,
"refcode": 373730B60AA
}
```
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"attorney_id": 1,
"first_name": "Eduardo",
"middle_name": "Quijano",
"last_name": "Quintos",
"organization_name": "CodeDev",
"bar_number": "200-20201999",
"active": 0,
"suffix_type_id": null,
"ccms_id": null,
"modified": "2020-09-09 03:59:08.000",
"created": "2020-08-10 17:19:51.000",
"Email": "eduardo.quintos23@gmail.com"
}
```
## PAYMENT TYPE
### GET /internal/payment/type
**Success Response Examples**
- Status Code: `200`
- Content:
```json=
{
"PaymentTypeID": 1,
"PaymentCode": "vs",
"PaymentDescription": "Internal"
}
```
## EFILING
### PATCH /internal/efilling/update
**Request Body**
| Key | Type | Description |
| -------- | -------- | -------- |
| efiling_id | string | Required. |
| status_type_id | string | Required. |
| court_division_id | datetime | Required |
| case_number | string | Required |
| case_name | string | Required |
```json=
{
"efiling_id": 3259,
"status_type_id": 2,
"court_division_id": 42,
"case_number": 30-2007-99100000-CL-BC-CJC,
"case_name": "EFSP Test Case - Civil"
}
```