Skip to content

Cases

Endpoints for interacting with Cases

The case object

This is the full list of properties on a case and whether they are required when creating a case.

PropertyRequiredNotes
URNIdentifier of the case. Used to match the case to any object in your system
TitleOne of: Mr, Miss, Mrs or Dr
GivenNames
Surname
DOBDay
DOBMonth
DOBYear
GenderOne of: Male, Female, Other or PreferNotToSay
PhoneNumbersComma separated list of phone numbers
EmailAddressesComma separated list of email addresses
Addressline1First line of the cases' address
Addressline2
Addressline3
Addressline4
AddressCity
AddressPostcode
AddressCountryCode2ISO 2 letter country code

Get case

Returns case info from a case id.

Endpoint/api/cases/{caseId}
MethodGET

Response

json

{
    "id": 229,
    "urn": "testing-123",
    "editTs": "0001-01-01T00:00:00",
    "assignedUsername": "Warren Russell",
    "givenNames": "Jerry",
    "surname": "Seinfeld",
    "dobYear": 1990,
    "dobMonth": 10,
    "dobDay": 10,
    "countryOfCitizenship": "",
    "addressLine1": "Best street",
    "addressCity": "Cardiff",
    "addressPostcode": "123",
    "addressCountryCode2": "gb",
    "emailAddresses": [],
    "phoneNumbers": []
}

Create case

Creates a new case from the information provided in the request body. The endpoint uses a multipart form data request which makes it easy to provide document files.

Something to note is the documents section of the request. It's an array so multiple documents can be provided but form data arrays can be tricky to get working. This is what it looks like uploading two documents in Postman:

Creating a case with multiple documents in Postman
Endpoint/api/cases
MethodPOST
Content typemultipart/form-data

Request

Here is creating a case in C#

csharp
public async Task<string> CreateTestCase(string accessToken)
{
    var client = new HttpClient{
        BaseAddress = new Uri("https://api.eyedp.com/")
    };

    var document = await File.ReadAllBytesAsync("TestData/test-passport.jpg");

    var fileContent = new ByteArrayContent(document);
    fileContent.Headers.ContentType = new MediaTypeHeaderValue("image/jpeg");

    var content = new MultipartFormDataContent{
        { new StringContent("testing-123"), "urn" },
        { new StringContent("Elaine"), "givenNames" },
        { new StringContent("Benes"), "surname" },
        { new StringContent("10"), "dobDay" },
        { new StringContent("01"), "dobMonth" },
        { new StringContent("1990"), "dobYear" },
        { new StringContent("Big house"), "addressline1" },
        { new StringContent("Newport"), "addresscity" },
        { new StringContent("12345"), "addresspostcode" },
        { new StringContent("GB"), "addresscountrycode2" },
        { new StringContent("passport"), "documents[0].type" },
        { fileContent, "documents[0].files", "test-passport.jpg" }
    };

    var request = new HttpRequestMessage(HttpMethod.Post, "/api/cases");
    request.Content = content;
    request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);

    var response = await client.SendAsync(request);

    response.EnsureSuccessStatusCode();

    return await response.Content.ReadAsStringAsync();
}

And the full create case request in Postman:

Creating a case with in Postman

Response

The response contains the id of the created case

json
256