QCC API
The Quandis Court Connect (QCC) API is based on RESTful principles, making it easy to integrate QCC functionality into your applications. With the API, you can initiate searches, fetch results, specify preferences for your account, and retrieve dashboard data for the searches you’ve performed.
In addition to using a RESTful interface for complete automation, you are also welcome to submit bulk requests in spreadsheet format (Excel or CSV is fine), and receive responses in spreadsheet format as well.
You may download Excel sample requests and responses. See the section below on ensure you submit valid court names.
Base URL
QCC offers both test and production websites. The base URL for each is:
- UAT: https://uatqcc.quandis.net
- Production: https://qcc.quandis.net
Authentication
QCC offers both forms-based and Basic authentication. The credentials you use are the same, whether you are using forms-based or Basic authentication. For automation, Basic authentication is recommended. When you sign up for QCC, Quandis will provide you with credentials (typically an email address and password). These credentials must be specified when making API calls.
Initiating a Case Search
To retrieve docket information for a particular case, you will call CourtCase.ashx/Request, posting the Court, State, CourtCase and an optional Priority.
Example request:
POST CourtCase/CourtCase.ashx/Request HTTP/1.1 State=MD&Court=Baltimore City Circuit Court&CourtCase=09C95022490
Notes:
- State, Court and CourtCase are required.
- The State must be the standard two letter abbreviation for the US State the court is in.
- The Court must match QCC’s court names, or a mapping you’ve submitted (see below).
- The CourtCase number is the case number as set by the court. This is not a number generated by QCC, nor should it be a case number generated by your software system.
Example response:
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 987654321
Notes:
- The CourtCaseReferenceID is a unique identifier created by QCC, and is used to track your request.
- An empty CourtCaseReferenceID means one of the required parameters did not contain a value.
Retrieving Case Search Results
To retrieve the search results, you will refer to the CourtCaseReferenceID returned when you submitted your search.
Example request
GET CourtCase/CourtCase.ashx/Response?CourtCaseReferenceID=987654321 HTTP/1.1
Example response:
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 09C95022490 Baltimore City Circuit Court MA Closed/Inactive Civil Non-Support 1/1/2015 1/14/2015gt; Decree or Order Pending 12/15/2015 3:04:05 PM Bail Bond 1/8/2013 Pending Proposed Order 1/13/2013 Complete https://qcc.quandis.net/Attachment/Attachment.ashx/Download?ID=12345 This is a Proposed Order
Notes:
- The results contain 2 ‘tables’: for a Case and Dockets
- Results are typically available about 30 seconds after submitting a request
- RunStatus will be ‘Pending’ when the results are being retrieved
- RunStatus will be ‘Complete’ when the results are available
Initiating a Party Search
To retrieve case information for a particular party, you will call CourtCaseParty.ashx/Request, posting the Court, State, Contact, FilingDateRange, and an optional Priority.
Example request:
POST CourtCase/CourtCaseParty.ashx/Request HTTP/1.1 State=MD&Court=Baltimore City Circuit Court&Contact=Smith&FilingDateStart=1/1/2002&FilingDateEnd=6/30/2002
Notes:
- State, Court, Contact, FilingDateStart and FilingDateEnd are required.
- The State must be the standard two letter abbreviation for the US State the court is in.
- The Court must match QCC’s court names, or a mapping you’ve submitted (see below).
- FilingDateStart and FilingDateEnd are the date range used to identify the filing date of the court case.
Example response:
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 987654321
Notes:
- The ID is a unique identifier created by QCC, and is used to track your request.
- An empty ID means one of the required parameters did not contain a value.
Retrieving Party Search Results
To retrieve the search results, you will refer to the ID returned when you submitted your search.
Example request
GET CourtCase/CourtCaseParty.ashx/Response?CourtCasePartyReferenceID=987654321 HTTP/1.1
Example response:
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Smith 1/1/2002 6/30/2002 Baltimore City Circuit Court MD Complete 3/29/2016 11:46:55 AM CAL051588a CLOSED CIVIL 6/21/2002 03C0700047a Closed/Inactive Name Change 6/28/2002
Notes:
- Results are typically available about 30 seconds after submitting a request
- Status will be ‘Pending’ when the results are being retrieved
- Status will be ‘Complete’ when the results are available
Court Mappings
In order for QCC to query the correct court, you must provide both a State and a Court field in your request. Quandis provides a standard set of court names for each state. If convenient, you may provide QCC with your preferred alternate names for any (or all) courts.
For example, if your case management system uses “Baltimore Circuit” instead of “Baltimore City Circuit Court”, you may provide us a one-time mapping, and subsequent Case Requests may use your court name instead of the QCC standard court name.
Your alternate name must be globally unique (e.g. not conflict with other QCC clients). To ensure this, prefix your court name with your website or domain name. If a firm dchlaw.com uses “Baltimore Circuit”, a good string would be “dchlaw.com-Court-Baltimore Circuit”.
Example request:
POST Contact/Court.ashx/Subscribe HTTP/1.1 State=MD&Court=Baltimore City Circuit Court&SubscriberID=dchlaw.com-Court-Baltimore Circuit
Scheduling
To set a recurring schedule for your cases, you will call CourtCase.ashx/SetBucketSchedule, posting the Schedule.
Example request:
POST CourtCase/CourtCase.ashx/SetBucketSchedule HTTP/1.1 Frequency=Recurring&FrequencyType=Daily&FrequencyInterval=18
Example request:
POST CourtCase/CourtCaseParty.ashx/SetBucketSchedule HTTP/1.1 Frequency=Recurring&FrequencyType=Daily&FrequencyInterval=18
Notes:
- Frequency
- Use Recurring to set a schedule
- Leaving this parameter blank will clear the schedule
- FrequencyType
- Daily
- Weekly
- Monthly
- FrequencyInterval
- The number of days,weeks, or months for the recurring search
Example response:
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 987654321 Daily every 18 day(s) @ 06:00:00pm
Notes:
- The BucketID is a unique identifier created by QCC, and is used to track your request.
Notifications
To set a notification url for your cases, you will call CourtCase.ashx/SetBucketNotificationURL, posting the NotificationURL.
Example request:
POST CourtCase/CourtCase.ashx/SetBucketNotificationURL HTTP/1.1 NotificationURL=http://www.quandis.com/SomeEndPoint?CaseNumber={CourtCase}
Example request:
POST CourtCase/CourtCaseParty.ashx/SetBucketNotificationURL HTTP/1.1 NotificationURL=http://www.quandis.com/SomeEndPoint?CaseParty={CourtCaseParty}
Notes:
- Include {CourtCase}, {Status}, {CourtCaseType} or {Title} in your url to pass these values when called.
Example response:
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 987654321 http://www.quandis.com/SomeEndPoint?CaseNumber={CourtCase}
Notes:
- The BucketID is a unique identifier created by QCC, and is used to track your request.