Simplified.ID API: v2

<back to all web services

AddDbsSearch

DBS
The following routes are available for this service:
POST/dbsAdd a DBS Search
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*


@DataContract
open class AddDbsSearch : BaseRequest()
{
    @DataMember
    open var request:AddDbsSearchRequest? = null
}

@DataContract
open class BaseRequest : IBaseRequest
{
    /**
    * The authentication credentials
    */
    @DataMember
    @ApiMember(Description="The authentication credentials", IsRequired=true, ParameterType="header, body")
    override var authentication:Authentication? = null
}

@DataContract
open class Authentication
{
    /**
    * The API User ID provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-User)
    */
    @DataMember
    @ApiMember(Description="The API User ID provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-User)", IsRequired=true, ParameterType="header, body")
    open var apiUserId:String? = null

    /**
    * The API User Key provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-Key)
    */
    @DataMember
    @ApiMember(Description="The API User Key provided by us when you signed up to use our API. Can be provided in the request body, or as a header parameter (X-Api-Key)", IsRequired=true, ParameterType="header, body")
    open var apiUserKey:String? = null

    /**
    * The User ID of the user making the request (e.g. a sub user). This is optional but can be used to associate API requests with a specific user, thereby allowing user permissions to be enforced. Can be provided in the body, or as a header parameter (X-User-Id).
    */
    @DataMember
    @ApiMember(Description="The User ID of the user making the request (e.g. a sub user). This is optional but can be used to associate API requests with a specific user, thereby allowing user permissions to be enforced. Can be provided in the body, or as a header parameter (X-User-Id).", ParameterType="header, body")
    open var userId:String? = null
}

open class AddDbsSearchRequest
{
    /**
    * The full name of the applicant
    */
    @ApiMember(Description="The full name of the applicant", IsRequired=true)
    open var name:String? = null

    /**
    * The date of birth for the applicant (DD/MM/YYYY format)
    */
    @ApiMember(Description="The date of birth for the applicant (DD/MM/YYYY format)", IsRequired=true)
    open var dateOfBirth:String? = null

    /**
    * The email address of the applicant
    */
    @ApiMember(Description="The email address of the applicant", IsRequired=true)
    open var email:String? = null

    /**
    * The applicant's mobile phone number in international format (e.g. '+447123456789')
    */
    @ApiMember(Description="The applicant's mobile phone number in international format (e.g. '+447123456789')", IsRequired=true)
    open var mobileInternational:String? = null

    /**
    * The country where the job is located
    */
    @ApiMember(Description="The country where the job is located", IsRequired=true)
    open var jobLocation:String? = null

    /**
    * The disclosure level of the DBS required
    */
    @ApiMember(Description="The disclosure level of the DBS required", IsRequired=true)
    open var disclosureLevel:String? = null

    /**
    * Your reference, if any
    */
    @ApiMember(Description="Your reference, if any")
    open var reference:String? = null

    /**
    * If this is specified, the search will be created for the specified sub user, otherwise it will be created in the main user account
    */
    @ApiMember(Description="If this is specified, the search will be created for the specified sub user, otherwise it will be created in the main user account")
    open var subUserName:String? = null

    /**
    * If the search should be linked to other searches, specify the them here
    */
    @ApiMember(Description="If the search should be linked to other searches, specify the them here")
    open var linkedTo:ArrayOfLinkedTo? = null
}

open class ArrayOfLinkedTo : ArrayList<LinkedTo>()
{
}

open class LinkedTo
{
    open var clientId:Int? = null
    open var id:Long? = null
    @SerializedName("type") open var Type:String? = null
    open var subtype:String? = null
    open var status:String? = null
    open var description:String? = null
    open var isArchived:Boolean? = null
    open var name:String? = null
    open var date:Date? = null
}

@DataContract
open class AddDbsSearchResponse
{
    @DataMember
    @SerializedName("data") open var Data:AddDbsSearchData? = null
}

open class AddDbsSearchData : BaseResponse(), IBaseSearchResponse
{
    override var linkedTo:ArrayOfLinkedTo? = null
    open var summary:DbsSearchSummary? = null
}

open class BaseResponse : IBaseDataResponse, IHasResponseStatus
{
    /**
    * The status of the response
    */
    @ApiMember(Description="The status of the response")
    override var responseStatus:ResponseStatus? = null
}

open class ArrayOfResponseError : ArrayList<ResponseError>()
{
}

open class DbsSearchSummary
{
    open var id:Long? = null
    open var dateSearched:Date? = null
    open var dateUpdated:Date? = null
    open var status:String? = null
    open var disclosureStatus:String? = null
    open var isApplicantInfoCompleted:Boolean? = null
    open var isIdCheckCompleted:Boolean? = null
    open var isApplicationCompleted:Boolean? = null
    open var isApplicationSubmitted:Boolean? = null
    open var isApplicationDisclosed:Boolean? = null
    open var disclosureLevel:String? = null
    open var applicantInformation:ApplicantInformation? = null
}

open class ApplicantInformation
{
    open var name:String? = null
    open var dateOfBirth:String? = null
    open var email:String? = null
    open var mobileInternational:String? = null
    open var jobLocation:String? = null
    open var reference:String? = null
    open var applicantPin:String? = null
}

Kotlin AddDbsSearch DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /dbs HTTP/1.1 
Host: api.simplified.id 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"request":{"name":"String","dateOfBirth":"String","email":"String","mobileInternational":"String","jobLocation":"String","disclosureLevel":"String","reference":"String","subUserName":"String","linkedTo":[{"clientId":0,"id":0,"type":"String","subtype":"String","status":"String","description":"String","isArchived":false,"name":"String","date":"\/Date(-62135596800000-0000)\/"}]},"authentication":{"apiUserId":"String","apiUserKey":"String","userId":"String"}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"data":{"linkedTo":[{"clientId":0,"id":0,"type":"String","subtype":"String","status":"String","description":"String","isArchived":false,"name":"String","date":"\/Date(-62135596800000-0000)\/"}],"summary":{"id":0,"dateSearched":"\/Date(-62135596800000-0000)\/","dateUpdated":"\/Date(-62135596800000-0000)\/","status":"String","disclosureStatus":"String","isApplicantInfoCompleted":false,"isIdCheckCompleted":false,"isApplicationCompleted":false,"isApplicationSubmitted":false,"isApplicationDisclosed":false,"disclosureLevel":"String","applicantInformation":{"name":"String","dateOfBirth":"String","email":"String","mobileInternational":"String","jobLocation":"String","reference":"String","applicantPin":"String"}},"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}}