Repository navigation
CRM API
Use the CRM API to get, search, create & update clients, cases, & contacts in Quill Interactive
https://downloads.quill-interactive.co.uk/API/quill-crm-api-DRAFT.pdf
The CRM API provides integrators with the following Client and Case features:
- Create a new Client (with associated client contacts e.g. Mr & Mrs Smith)
- Create a new Case for an existing Client (or combine with create Client request above)
- Record time
- Archive a Case
- Search for Clients &/or Cases
- List clients created since a given date/time
- List cases created since a given date/time
This API was designed prior to REST becoming popular, so although the data payloads are JSON, this API is not strictly RESTful. However, examples are provided to help you get started.
The /Clients endpoint allows integrators to mimic the same functionality as the create new client screens in Interactive. It supports creation of Individuals, Groups (e.g. Mr & Mrs), & Companies, with associated contacts, addresses & phone numbers.
This screenshot shows some of the fields expected by the API (see the “Parameters” section below to see how the data in these fields needs to be provided).
TIP: it is also possible to create a Case (or Cases) whilst creating a new Client, within the same request.
- Countries
- Nationalities
| Name | Type | Description |
|---|---|---|
| Code | str(6) | Auto generated by Quill on POST and returned in the response object. You must associate this value with your own Client object for mapping purposes. You will need it to add further Contacts or Cases to this Client at a later date |
| Description | str(77) | Required. Either the organisation name (if it's a company) like "Acme PLC", or "Smith John Mr and Jane Mrs" if it's a group, or simply "Bloggs Joe Mr" for individuals. IMPORTANT: Please place surname at the start of Description because the Code above is auto generated based on this value |
| _contacts | Object Array | An array of 1 or many contacts - see below |
| Cases | Object Array | Optional: An array of 0, 1 or many cases. Only populate this if you want to create a case or cases within your create Client request |
| Notes | str(250) | |
| IsCompany | Boolean | Set to True if client is a company |
| IncorporationDate | DateTime | Only relevant if IsCompany=True |
| IncorporationCountry | Lookup | Only relevant if IsCompany=True |
| VatRegistered | str (20) | Only relevant if IsCompany=True |
| CertificateRegistration Number | str (20) | Only relevant if IsCompany=True |
| Name | Type | Description |
|---|---|---|
| LastName | str(30) | Required. |
| FirstName | str(30) | |
| Title | str(15) | |
| Nationality | Lookup | Defaults to British if omitted |
| NI | str(20) | National Insurance Number |
| BirthDate | Date | Format "YYYY-MM-DD" |
| IsDeceased | Boolean | |
| Gender | Int | 0 = Male, 1 = Female, 2 = Other |
| JobTitle | str(30) | |
| EMail1 | str(50) | |
| EMail2 | str(50) | |
| _workAddress | Address Object | |
| _homeAddress | Address Object | |
| _billingAddress | Address Object | |
| _workPhoneNumber | Phone Object | |
| _mobilePhoneNumber | Phone Object | |
| _homePhoneNumber | Phone Object |
| Name | Type | Description |
|---|---|---|
| Line1 | str (35) | Required. |
| Line2 | str (35) | |
| Town | str (35) | |
| County | str (35) | |
| Postcode | str (35) | Required. |
| Country | Lookup | Defaults to UK if omitted |
| Salutation | str (100) | |
| AddressName | str (100) | |
| DxNumber | str (10) | |
| DxDistrict | str (20) |
| Name | Type | Description |
|---|---|---|
| AreaCode | str (6) | |
| Phone | str (15) | Required. |
TIP: "ClientId” header = TenantId
curl --location --request POST 'https://api.ourdomain.co.uk/quillapi5/clients' \
--header 'clientId: {your-tenant-id-here}' \
--header 'Accept: application/Json' \
--header 'Authorization: Bearer {your-token}' \
--header 'Content-Type: application/json' \
--data-raw '{
"Description": "Bloggs Joe Mr",
"_contacts": [
{
"LastName": "Bloggs",
"FirstName": "Joe",
"Title": "Mr",
"EMail1": "joe.bloggs@mydomain.co.uk",
"JobTitle": "Software Developer",
"Organisation": "ACME Legal Ltd",
"NI": "NH123456A",
"BirthDate": "1995-04-30",
"_homeAddress": {
"AddressName": "Mr J Bloggs",
"Salutation": "Mr Bloggs",
"Line1": "25 Park Drive",
"Line2": "Bury",
"Town": "Manchester",
"Postcode": "AB1 2CD"
},
"_homePhoneNumber": {
"AreaCode": "01234",
"Phone": "567890"
}
}
]
}'
