Shell HTTP JavaScript Node.JS Ruby Python Java Go

Contacts v0.19.11

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Contacts manages contact information for people within the Apiture Banking APIs.

Error Types

Error responses in this API may have one of the type values described below. See Errors for more information on error responses and error types.

accessDenied

Description: The credentials supplied in the request are insufficient to grant access.
Remediation: Check the supplied credentials for validity.

ifMatchHeaderDoesNotMatch

Description: The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Remediation: Resubmit the operation, supplying the value of the ETag and the most recent state of the resource.

noSuchContact

Description: No contact was found for the specified contactId.
Remediation: Ensure that the supplied contactId corresponds to an existing contact resource.

contactNotUpdatable

Description: A contact with an associated user record cannot be updated.
Remediation: Some contact properties require multi-factor authentication on update. Use the Users API to update the user record associated with this contact instead.

invalidContactState

Description: Actions on contacts may only be performed if they are in one of the required states.
Remediation: Check the state of the contact and the applicable allowed state transitions in the Contacts API documentation.

The attributes object in the error may have the following properties:

Property Type Description
currentState string undefined
allowedStates [undefined] undefined

invalidUnmaskedQueryParam

Description: Only the values of false or true can be supplied with the unmasked query parameter.
Remediation: Resubmit the operation without the query parameter or check the documentation for valid query params.

Download OpenAPI Definition (YAML)

Base URLs:

Terms of service

Email: Apiture Web: Apiture

Authentication

Scope Scope Description
profiles/read Read access to user and contact related resources.
profiles/write Write (update) access to user and contact related resources.
profiles/delete Delete access to user and contact related resources.
profiles/readPii Read access to personally identifiable information such as tax ID numbers, phone numbers, email and postal addresses. This must be granted in addition to the profiles/read scope in order to read such data, but is included in the profiles/full scope.
profiles/full Full access to user and contact related resources.

API

Endpoints which describe this API.

getApi

Code samples

# You can also use wget
curl -X GET /contacts/ \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY'

GET /contacts/ HTTP/1.1

Accept: application/hal+json

var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY'

};

$.ajax({
  url: '/contacts/',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY'

};

fetch('/contacts/',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'API-Key' => 'API_KEY'
}

result = RestClient.get '/contacts/',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'API-Key': 'API_KEY'
}

r = requests.get('/contacts/', params={

}, headers = headers)

print r.json()

URL obj = new URL("/contacts/");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/hal+json"},
        "API-Key": []string{"API_KEY"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/contacts/", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Top-level resources and operations in this API

GET /

Return links to the top-level resources and operations in this API. This API provides the following links in the _links object:

Try It

Example responses

200 Response

{
  "id": "apiName",
  "name": "API name",
  "apiVersion": "1.0.0",
  "_profile": "https://production.api.apiture.com/schemas/common/root/v2.0.0/profile.json",
  "_links": {}
}

Responses

StatusDescription
200 OK
OK
Schema: root

getApiDoc

Code samples

# You can also use wget
curl -X GET /contacts/apiDoc \
  -H 'Accept: application/json' \
  -H 'API-Key: API_KEY'

GET /contacts/apiDoc HTTP/1.1

Accept: application/json

var headers = {
  'Accept':'application/json',
  'API-Key':'API_KEY'

};

$.ajax({
  url: '/contacts/apiDoc',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'API-Key':'API_KEY'

};

fetch('/contacts/apiDoc',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'API-Key' => 'API_KEY'
}

result = RestClient.get '/contacts/apiDoc',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'API-Key': 'API_KEY'
}

r = requests.get('/contacts/apiDoc', params={

}, headers = headers)

print r.json()

URL obj = new URL("/contacts/apiDoc");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "API-Key": []string{"API_KEY"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/contacts/apiDoc", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Return API definition document

GET /apiDoc

Return the OpenAPI document that describes this API.

Try It

Example responses

200 Response

{}

Responses

StatusDescription
200 OK
OK
Schema: Inline

Response Schema

getLabels

Code samples

# You can also use wget
curl -X GET /contacts/labels \
  -H 'Accept: application/hal+json' \
  -H 'Accept-Language: string' \
  -H 'API-Key: API_KEY'

GET /contacts/labels HTTP/1.1

Accept: application/hal+json
Accept-Language: string

var headers = {
  'Accept':'application/hal+json',
  'Accept-Language':'string',
  'API-Key':'API_KEY'

};

$.ajax({
  url: '/contacts/labels',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/hal+json',
  'Accept-Language':'string',
  'API-Key':'API_KEY'

};

fetch('/contacts/labels',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'Accept-Language' => 'string',
  'API-Key' => 'API_KEY'
}

result = RestClient.get '/contacts/labels',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'Accept-Language': 'string',
  'API-Key': 'API_KEY'
}

r = requests.get('/contacts/labels', params={

}, headers = headers)

print r.json()

URL obj = new URL("/contacts/labels");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/hal+json"},
        "Accept-Language": []string{"string"},
        "API-Key": []string{"API_KEY"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/contacts/labels", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Localized Labels

GET /labels

Return a JSON object which defines labels for enumeration types defined by the schemas defined in this API.

The labels in the response may not all match the requested language; some may be in the default language (en-us).

Parameters

Parameter Description
Accept-Language
(header)
string
The weighted language tags which indicate the user's preferred natural language for the localized labels in the response, as per RFC 7231.

Try It

Example responses

200 Response

{
  "_profile": "https://api.apiture.com/schemas/common/labelGroups/v1.0.1/profile.json",
  "groups": {
    "structure": {
      "unknown": {
        "label": "Unknown",
        "code": "0",
        "hidden": true
      },
      "corporation": {
        "label": "Corporation",
        "code": "1",
        "variants": {
          "fr": {
            "label": "Soci\\u00e9t\\u00e9"
          }
        }
      },
      "partnership": {
        "label": "Partnership",
        "code": "2",
        "variants": {
          "fr": {
            "label": "Partenariat"
          }
        }
      },
      "llc": {
        "label": "Limited Liability Company",
        "code": "2",
        "variants": {
          "fr": {
            "label": "Soci\\u00e9t\\u00e9 \\u00e9 Responsabilit\\u00e9 Limit\\u00e9e"
          }
        }
      },
      "nonProfit": {
        "label": "Non Profit",
        "code": "4",
        "variants": {
          "fr": {
            "label": "Non Lucratif"
          }
        }
      },
      "financialInstitution": {
        "label": "Financial Institution",
        "code": "8",
        "variants": {
          "fr": {
            "label": "Institution financi\\u00e8re"
          }
        }
      },
      "soleProprietorship": {
        "label": "Sole Proprietorship",
        "code": "11",
        "variants": {
          "fr": {
            "label": "Entreprise individuelle"
          }
        }
      },
      "other": {
        "label": "Other",
        "code": "254",
        "variants": {
          "fr": {
            "label": "Autre"
          }
        }
      }
    },
    "estimatedAnnualRevenue": {
      "unknown": {
        "label": "Unknown",
        "code": "0"
      },
      "under1Million": {
        "label": "Under $1M",
        "code": "1",
        "range": "[0,1000000.00)"
      },
      "from1to10Million": {
        "label": "$1M to $10M",
        "code": "2",
        "range": "[1000000.00,10000000.00)"
      },
      "from10to100Million": {
        "label": "$10M to $100M",
        "code": "3",
        "range": "[10000000.00,100000000.00)"
      },
      "over100Million": {
        "label": "Over $100,000,000.00",
        "code": "4",
        "range": "[100000000.00,]"
      },
      "other": {
        "label": "Other",
        "code": "254"
      }
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: labelGroups

Contact

Contact data for individuals.

getContacts

Code samples

# You can also use wget
curl -X GET /contacts/contacts \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET /contacts/contacts HTTP/1.1

Accept: application/hal+json

var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: '/contacts/contacts',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('/contacts/contacts',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get '/contacts/contacts',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/contacts/contacts', params={

}, headers = headers)

print r.json()

URL obj = new URL("/contacts/contacts");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/hal+json"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/contacts/contacts", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Return a collection of contacts

GET /contacts

Return a paginated sortable filterable searchable collection of contacts. The links in the response include pagination links.

Parameters

Parameter Description
start
(query)
integer(int64)
The zero-based index of the first contact item to include in this page. The default 0 denotes the beginning of the collection.
limit
(query)
integer(int32)
The maximum number of contact representations to return in this page.
Default: 100
sortBy
(query)
string
Optional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2.
filter
(query)
string
Optional filter criteria. See filtering.
q
(query)
string
Optional search string. See searching.
state
(query)
string
Subset the contacts collection to those whose state matches this value. Use | to separate multiple values. For example, ?state=pending matches only items whose state is pending; ?state=removed|inactive matches items whose state is removed or inactive. This is combined with an implicit and with other filters if they are used. See filtering.
Enumerated values:
pending
active
inactive
removed
occupation
(query)
string
Subset the contacts collection to those with this name value. Use | to separate multiple values. For example, ?occupation=officeAndAdministrativeSupport matches only items whose occupation is officeAndAdministrativeSupport; ?occupation=officeAndAdministrativeSupport|transportationAndMaterialMoving matches items whose occupation is officeAndAdministrativeSupport or transportationAndMaterialMoving. This is combined with an implicit and with other filters if they are used. See filtering. The values are derived from the occupation label group from the result of the getLabels operation.
Note: The enum list will be removed in future update to the API.
Enumerated values:
unknown
architectureAndEngineering
artsDesignEntertainmentSportsAndMedia
buildingAndGroundsCleaningAndMaintenance
businessAndFinancialOperations
communityAndSocialService
computerAndMathematical
constructionAndExtraction
educationTrainingAndLibrary
farmingFishingAndForestry
foodPreparationAndServingRelated
healthcarePractitionersAndTechnical
healthcareSupport
installationMaintenanceAndRepair
legal
lifePhysicalAndSciences
management
militarySpecific
officeAndAdministrativeSupport
personalCareAndService
production
protectiveServices
salesAndRelated
transportationAndMaterialMoving
other
notApplicable
unmasked
(query)
boolean
When requesting a contact, the full taxId is not included in the response by default, for security reasons. Include this query parameter, with a value of true, to request that the response body includes the full tax Id number. Such requests are auditable.

Try It

Example responses

200 Response

{
  "_profile": "https://api.apiture.com/schemas/contacts/contacts/v1.1.2/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "contacts",
  "_links": {
    "self": {
      "href": "/contacts/contacts?start=10&limit=10"
    },
    "first": {
      "href": "/contacts/contacts?start=0&limit=10"
    },
    "next": {
      "href": "/contacts/contacts?start=20&limit=10"
    },
    "collection": {
      "href": "/contacts/contacts"
    }
  },
  "_embedded": {
    "items": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
      "_links": {
        "self": {
          "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith",
      "preferredName": "John",
      "suffix": "MD",
      "identification": [
        {
          "type": "taxId",
          "value": "*****3333"
        }
      ],
      "emailAddresses": [
        {
          "_id": "pe1",
          "value": "api@apiture.com",
          "type": "personal"
        },
        {
          "_id": "we1",
          "value": "support@apiture.com",
          "type": "work"
        }
      ],
      "phones": [
        {
          "_id": "hp1",
          "type": "home",
          "number": "+19105550155"
        },
        {
          "_id": "mp1",
          "type": "mobile",
          "number": "+19105550155"
        }
      ],
      "birthdate": "1974-10-27",
      "citizenship": [
        {
          "countryCode": "US",
          "state": "citizen"
        }
      ],
      "residencyStatus": "resident",
      "occupation": "officeAndAdministrativeSupport",
      "addresses": [
        {
          "type": "home",
          "addressLine1": "555 N Front Street",
          "addressLine2": "Suite 5555",
          "city": "Wilmington",
          "regionCode": "NC",
          "postalCode": "28401-5405",
          "countryCode": "US"
        },
        {
          "type": "work",
          "addressLine1": "123 S 3rd Street",
          "addressLine2": "Apt 42",
          "city": "Wilmington",
          "regionCode": "NC",
          "postalCode": "28411-5405",
          "countryCode": "US"
        }
      ],
      "yearsAtAddress": 3,
      "mailingDifferentAddress": false,
      "state": "active"
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: contacts
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response will contain details about the request error.
Schema: errorResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error.
Schema: errorResponse

createContact

Code samples

# You can also use wget
curl -X POST /contacts/contacts \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST /contacts/contacts HTTP/1.1

Content-Type: application/hal+json
Accept: application/hal+json

var headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: '/contacts/contacts',
  method: 'post',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://api.apiture.com/schemas/contacts/createContact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "112-22-3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active"
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('/contacts/contacts',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/hal+json',
  'Accept' => 'application/hal+json',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post '/contacts/contacts',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/hal+json',
  'Accept': 'application/hal+json',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('/contacts/contacts', params={

}, headers = headers)

print r.json()

URL obj = new URL("/contacts/contacts");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/hal+json"},
        "Accept": []string{"application/hal+json"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "/contacts/contacts", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Create a new contact

POST /contacts

Create a new contact in the contacts collection.

Body parameter

{
  "_profile": "https://api.apiture.com/schemas/contacts/createContact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "112-22-3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active"
}

Parameters

Parameter Description
body
(body)
createContact (required)
The data necessary to create a new contact.

Try It

Example responses

201 Response

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Responses

StatusDescription
201 Created
Created
Schema: contact
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response will contain details about the request error.
Schema: errorResponse

Response Headers

StatusDescription
201 Location string uri
The URI of the new resource. If the URI begins with / it is relative to the API root context. Else, it is a full URI starting with scheme://host
201 ETag string
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update the resource.

getContact

Code samples

# You can also use wget
curl -X GET /contacts/contacts/{contactId} \
  -H 'Accept: application/hal+json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

GET /contacts/contacts/{contactId} HTTP/1.1

Accept: application/hal+json
If-None-Match: string

var headers = {
  'Accept':'application/hal+json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: '/contacts/contacts/{contactId}',
  method: 'get',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/hal+json',
  'If-None-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('/contacts/contacts/{contactId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'If-None-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get '/contacts/contacts/{contactId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'If-None-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/contacts/contacts/{contactId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("/contacts/contacts/{contactId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/hal+json"},
        "If-None-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/contacts/contacts/{contactId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Fetch a representation of this contact

GET /contacts/{contactId}

Return a HAL representation of this contact resource.

Parameters

Parameter Description
contactId
(path)
string (required)
The unique identifier of this contact. This is an opaque string.
If-None-Match
(header)
string
The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET will return 304 (Not Modified) and no response body, else the resource representation will be returned.
unmasked
(query)
boolean
When requesting a contact, the full taxId is not included in the response by default, for security reasons. Include this query parameter, with a value of true, to request that the response body includes the full tax Id number. Such requests are auditable.

Try It

Example responses

200 Response

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: contact
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
404 Not Found

Not Found. There is no such contact resource at the specified {contactId}. The _error field in the response will contain details about the request error.

This error response may have one of the following type values:

Schema: errorResponse

Response Headers

StatusDescription
200 ETag string
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this contact resource.

updateContact

Code samples

# You can also use wget
curl -X PUT /contacts/contacts/{contactId} \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PUT /contacts/contacts/{contactId} HTTP/1.1

Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string

var headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: '/contacts/contacts/{contactId}',
  method: 'put',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');
const inputBody = '{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('/contacts/contacts/{contactId}',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/hal+json',
  'Accept' => 'application/hal+json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.put '/contacts/contacts/{contactId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/hal+json',
  'Accept': 'application/hal+json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('/contacts/contacts/{contactId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("/contacts/contacts/{contactId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/hal+json"},
        "Accept": []string{"application/hal+json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "/contacts/contacts/{contactId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Update this contact

PUT /contacts/{contactId}

Perform a complete replacement of this contact.

Body parameter

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Parameters

Parameter Description
contactId
(path)
string (required)
The unique identifier of this contact. This is an opaque string.
If-Match
(header)
string
The entity tag that was returned in the ETag response. This must match the current entity tag of the resource.
body
(body)
contact (required)

Try It

Example responses

200 Response

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: contact
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response will contain details about the request error.
Schema: errorResponse
StatusDescription
404 Not Found

Not Found. There is no such contact resource at the specified {contactId}. The _error field in the response will contain details about the request error.

This error response may have one of the following type values:

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error.
Schema: errorResponse

Response Headers

StatusDescription
200 ETag string
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this contact resource.

patchContact

Code samples

# You can also use wget
curl -X PATCH /contacts/contacts/{contactId} \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PATCH /contacts/contacts/{contactId} HTTP/1.1

Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string

var headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: '/contacts/contacts/{contactId}',
  method: 'patch',

  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');
const inputBody = '{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('/contacts/contacts/{contactId}',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/hal+json',
  'Accept' => 'application/hal+json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.patch '/contacts/contacts/{contactId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/hal+json',
  'Accept': 'application/hal+json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.patch('/contacts/contacts/{contactId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("/contacts/contacts/{contactId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"application/hal+json"},
        "Accept": []string{"application/hal+json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "/contacts/contacts/{contactId}", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Update this contact

PATCH /contacts/{contactId}

Perform a partial update of this contact. Fields which are omitted are not updated. Nested _embedded and _links are ignored if included.

Body parameter

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Parameters

Parameter Description
contactId
(path)
string (required)
The unique identifier of this contact. This is an opaque string.
If-Match
(header)
string
The entity tag that was returned in the ETag response. This must match the current entity tag of the resource.
body
(body)
contact (required)

Try It

Example responses

200 Response

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: contact
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response will contain details about the request error.
Schema: errorResponse
StatusDescription
404 Not Found

Not Found. There is no such contact resource at the specified {contactId}. The _error field in the response will contain details about the request error.

This error response may have one of the following type values:

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. There is no such contact resource at the specified {contactId}. The _error field in the response will contain details about the request error. Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following:

  • A contact with the associated taxId already exists
  • The state of a removed contact may not be changed.
  • The state of an active contact may not be changed to removed.
  • The state cannot be updated via a PUT or POST request. Please use the appropriate endpoint to change the state.
  • Some key fields of the contact record may not be changed or removed, such as their taxId

This error response may have one of the following type values:

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error.
Schema: errorResponse

Response Headers

StatusDescription
200 ETag string
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this contact resource.

activateContact

Code samples

# You can also use wget
curl -X POST /contacts/activeContacts?contact=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST /contacts/activeContacts?contact=string HTTP/1.1

Accept: application/hal+json
If-Match: string

var headers = {
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: '/contacts/activeContacts',
  method: 'post',
  data: '?contact=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('/contacts/activeContacts?contact=string',
{
  method: 'POST',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post '/contacts/activeContacts',
  params: {
  'contact' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('/contacts/activeContacts', params={
  'contact': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("/contacts/activeContacts?contact=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/hal+json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "/contacts/activeContacts", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Activate a contact.

POST /activeContacts

Activate a contact from an inactive state.

This operation is invoked from the apiture:activate link on a contact resource when that contact is eligible to be activated. This operation is only allowed if the state is inactive.

This changes the state to active.

Parameters

Parameter Description
contact
(query)
string (required)
A string which identifies an existing contact to activate, deactivate, or remove by POSTing it to the corresponding resource set. The server supplies this value in a link within the representation of a contact. The value may be a {contactId} or a contact URI.
contactUri
(query)
string
The URI of an existing contact which is eligible to be activated. This parameter is deprecated. Use the ?contact= query parameter instead.
If-Match
(header)
string
The entity tag that was returned in the ETag response. This must match the current entity tag of the resource.

Try It

Example responses

200 Response

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: contact
StatusDescription
400 Bad Request
Bad Request. The contact or contactUri was malformed or does not refer to a contact.
Schema: errorResponse
StatusDescription
409 Conflict

Conflict. There is no such contact resource at the specified {contactId}. The _error field in the response will contain details about the request error. Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following:

  • A contact with the associated taxId already exists
  • The state of a removed contact may not be changed.
  • The state of an active contact may not be changed to removed.
  • The state cannot be updated via a PUT or POST request. Please use the appropriate endpoint to change the state.
  • Some key fields of the contact record may not be changed or removed, such as their taxId

This error response may have one of the following type values:

Schema: errorResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error.
Schema: errorResponse

Response Headers

StatusDescription
200 ETag string
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this contact resource.

deactivateContact

Code samples

# You can also use wget
curl -X POST /contacts/inactiveContacts?contact=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST /contacts/inactiveContacts?contact=string HTTP/1.1

Accept: application/hal+json
If-Match: string

var headers = {
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: '/contacts/inactiveContacts',
  method: 'post',
  data: '?contact=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('/contacts/inactiveContacts?contact=string',
{
  method: 'POST',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post '/contacts/inactiveContacts',
  params: {
  'contact' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('/contacts/inactiveContacts', params={
  'contact': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("/contacts/inactiveContacts?contact=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/hal+json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "/contacts/inactiveContacts", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Deactivate a contact.

POST /inactiveContacts

Deactivate a contact from an active state.

This operation is invoked from the apiture:deactivate link on a contact resource when that contact is eligible to be deactivated. This operation is only allowed if the state is active.

This changes the state to inactive.

Parameters

Parameter Description
contact
(query)
string (required)
A string which identifies an existing contact to activate, deactivate, or remove by POSTing it to the corresponding resource set. The server supplies this value in a link within the representation of a contact. The value may be a {contactId} or a contact URI.
contactUri
(query)
string
The URI of an existing contact which is eligible to be activated. This parameter is deprecated. Use the ?contact= query parameter instead.
If-Match
(header)
string
The entity tag that was returned in the ETag response. This must match the current entity tag of the resource.

Try It

Example responses

200 Response

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: contact
StatusDescription
400 Bad Request
Bad Request. The contact or contactUri was malformed or does not refer to a contact.
Schema: errorResponse
StatusDescription
409 Conflict

Conflict. There is no such contact resource at the specified {contactId}. The _error field in the response will contain details about the request error. Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following:

  • A contact with the associated taxId already exists
  • The state of a removed contact may not be changed.
  • The state of an active contact may not be changed to removed.
  • The state cannot be updated via a PUT or POST request. Please use the appropriate endpoint to change the state.
  • Some key fields of the contact record may not be changed or removed, such as their taxId

This error response may have one of the following type values:

Schema: errorResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error.
Schema: errorResponse

Response Headers

StatusDescription
200 ETag string
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this contact resource.

removeContact

Code samples

# You can also use wget
curl -X POST /contacts/removedContacts?contact=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST /contacts/removedContacts?contact=string HTTP/1.1

Accept: application/hal+json
If-Match: string

var headers = {
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: '/contacts/removedContacts',
  method: 'post',
  data: '?contact=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('/contacts/removedContacts?contact=string',
{
  method: 'POST',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/hal+json',
  'If-Match' => 'string',
  'API-Key' => 'API_KEY',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post '/contacts/removedContacts',
  params: {
  'contact' => 'string'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'If-Match': 'string',
  'API-Key': 'API_KEY',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('/contacts/removedContacts', params={
  'contact': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("/contacts/removedContacts?contact=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/hal+json"},
        "If-Match": []string{"string"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "/contacts/removedContacts", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

Remove a contact.

POST /removedContacts

Remove a contact by setting its state to removed.

This operation is invoked from the apiture:remove link on a contact resource when that contact is eligible to be removed. The contact must not be in use (there may not be any active associations to the contact). This operation is only allowed if the state is inactive.

This changes the state to removed.

Parameters

Parameter Description
contact
(query)
string (required)
A string which identifies an existing contact to activate, deactivate, or remove by POSTing it to the corresponding resource set. The server supplies this value in a link within the representation of a contact. The value may be a {contactId} or a contact URI.
contactUri
(query)
string
The URI of an existing contact which is eligible to be activated. This parameter is deprecated. Use the ?contact= query parameter instead.
If-Match
(header)
string
The entity tag that was returned in the ETag response. This must match the current entity tag of the resource.

Try It

Example responses

200 Response

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: contact
StatusDescription
400 Bad Request
Bad Request. The contact or contactUri was malformed or does not refer to a contact.
Schema: errorResponse
StatusDescription
409 Conflict

Conflict. There is no such contact resource at the specified {contactId}. The _error field in the response will contain details about the request error. Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following:

  • A contact with the associated taxId already exists
  • The state of a removed contact may not be changed.
  • The state of an active contact may not be changed to removed.
  • The state cannot be updated via a PUT or POST request. Please use the appropriate endpoint to change the state.
  • Some key fields of the contact record may not be changed or removed, such as their taxId

This error response may have one of the following type values:

Schema: errorResponse
StatusDescription
422 Unprocessable Entity
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error.
Schema: errorResponse

Response Headers

StatusDescription
200 ETag string
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this contact resource.

Schemas

abstractRequest

{
  "_profile": "{uri of resource profile.json}",
  "_links": {
    "self": {
      "href": "{uri of current resource}"
    }
  }
}

Abstract Request (v2.0.0)

An abstract schema used to define other request-only schemas. This is a HAL resource representation, minus the _error defined in abstractResource.

This schema was resolved from common/abstractRequest.

Properties

NameDescription
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.

abstractResource

{
  "_profile": "{uri of resource profile.json}",
  "_links": {
    "self": {
      "href": "{uri of current resource}"
    }
  }
}

Abstract Resource (v2.0.0)

An abstract schema used to define other schemas for request and response bodies. This is a HAL resource representation. This model contains hypermedia _links, and either optional domain object data with _profile and optional _embedded objects, or an _error object. In responses, if the operation was successful, this object will not include the _error, but if the operation was a 4xx or 5xx error, this object will not include _embedded or any data fields, only _error and optionally _links.

This schema was resolved from common/abstractResource.

Properties

NameDescription
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.

address

{
  "_id": "ha5",
  "type": "home",
  "addressLine1": "555 N Front Street",
  "addressLine2": "Suite 5555",
  "city": "Wilmington",
  "regionCode": "NC",
  "postalCode": "28401-5405",
  "countryCode": "US"
}

Address (v1.0.0)

A postal address.

Properties

NameDescription
type addressType (required)
The type of this address.
label string
A text label, suitable for presentation to the end user. This is derived from type or from otherType if type is other
read-only
minLength: 4
maxLength: 32
otherType string
The actual address type if type is other.
minLength: 4
maxLength: 32
addressLine1 string
The first street address line of the address, normally a house number and street name.
minLength: 4
maxLength: 128
addressLine2 string
The optional second street address line of the address.
maxLength: 128
city string
The name of the city or municipality.
minLength: 2
maxLength: 128
regionCode string
The mailing address region code, such as state in the US, or a province in Canada. This is normalized to uppercase.
minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$
postalCode string
The mailing address postal code, such as a US Zip or Zip+4 code, or a Canadian postal code.
minLength: 5
maxLength: 10
pattern: ^[0-9]{5}(?:-[0-9]{4})?$
countryCode string
The ISO 3166-1 alpha-2 country code. This is normalized to uppercase.
minLength: 2
maxLength: 2
pattern: ^[a-zA-Z]{2}$
_id string
An identifier for this address, so that it can be referenced uniquely. The service will assign a unique _id if the client does not provide one. The _id must be unique across all addresses within the addresses array.
minLength: 1
maxLength: 8
pattern: ^[-a-zA-Z0-9_]{1,8}$

addressType

"unknown"

Address Type (v1.0.0)

The type of a postal address.

Warning: The enum list will be removed in a future release.

The allowed values for this property are defined at runtime in the label group named addressType in the response from the getLabels operation.

Type: string
Enumerated values:
unknown
home
prior
work
school
mailing
vacation
shipping
billing
headquarters
commercial
site
property
other
notApplicable

attributeValue

{}

Attribute Value (v2.0.0)

The data associated with this attribute.

This schema was resolved from common/attributeValue.

Properties

attributes

{
  "property1": {},
  "property2": {}
}

Attributes (v2.0.0)

An optional map of name/value pairs which contains additional dynamic data about the resource.

This schema was resolved from common/attributes.

Properties

NameDescription
additionalProperties attributeValue
The data associated with this attribute.

This schema was resolved from common/attributeValue.

authorization

{
  "userId": "bd9e7a93-32cc-435d-ac57-f21faa082318",
  "customerId": "10047294723672",
  "type": "joint",
  "role": "Chief Financial Officer",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "taxId": "*****3333",
  "citizen": true,
  "addresses": [
    {
      "_id": "ha5",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "id": "wa0",
      "type": "other",
      "label": "mailing",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha5",
  "emailAddress": "JohnDanielSmith@example.com"
}

Authorization (v1.0.0)

Represents a person authorized for account access. This object contains key identification information for the person and the type of access or role that the person has in relation to the banking account or organization.

Properties

NameDescription
firstName string (required)
The person's first name (or given name).
middleName string
The person's middle name.
lastName string (required)
The person's last name (or surname).
addresses [address] (required)
An array of postal/mailing addresses.
preferredMailingAddressId string
The preferred mailing address. This string is the _id of an address in the addresses array.
minLength: 1
maxLength: 4
taxId string (required)
Official government identification (tax ID) for this person. This will return a masked tax ID, where only the last 4 digits are visible. If the ?unmasked=true query parameter is passed, the full, unmasked tax ID is returned.
citizen boolean (required)
Indicates if the person is a (US) citizen.
emailAddress string(email)
Optional email address.
userId string (required)
The unique ID of the user. This is the _id value of the user resource from the Users API.
customerId string (required)
The unique customer number, also known as the Customer Identification File number or CIF number. This derived value is assigned to the user in the banking core. The customerId differs from the _id (which is the ID of the resource in the Users API).
read-only
minLength: 1
maxLength: 100
type authorizationType (required)

The type of this account access authorization.

  • primary the contact is the primary owner of a personal account. There may be only one primary owner. The target of the authorization is a single personal account.
  • joint the contact is a non-primary joint owner of a personal account. The target of the authorization is a single personal account.
  • authorizedSigner the contact is an authorized signer for a business account. The target of the authorization is an all business accounts owned by the organization.
role string
The person's role at the organization. This attribute is required when the authorization type is authorizedSigner.

authorizationType

"primary"

Account Authorization type (v1.0.0)

The type of this account access authorization.

authorizationType strings may have one of the following enumerated values:

ValueDescription
primaryPrimary Account Holder: The primary account holder of a personal account. There may be only one primary owner.
jointJoint Account Holder: A non-primary joint account holder of a personal account.
authorizedSignerAuthorized Signer: Authorized Signer of a business account.

These enumeration values are further described by the label group named authorizationType in the response from the getLabels operation.

Type: string
Enumerated values:
primary
joint
authorizedSigner

citizenship

[
  {
    "countryCode": "US",
    "state": "citizen"
  }
]

Citizenship (v1.0.0)

Citizenship or nationality status.

citizenship is an array schema.

Array Elements

NameDescription
Citizenship (v1.0.0) [object]
Citizenship or nationality status.
countryCode string (required)
The ISO 3166-1 country code for the individual's citizenship.
minLength: 2
maxLength: 2
state string (required)
The individual's citizenship status.


Enumerated values:
citizen
other

collection

{
  "_links": {
    "property1": {
      "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
      "title": "Applicant"
    },
    "property2": {
      "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
      "title": "Applicant"
    }
  },
  "_embedded": {},
  "_profile": "http://example.com",
  "_error": {
    "_id": "2eae46e1575c0a7b0115a4b3",
    "message": "Descriptive error message...",
    "statusCode": 422,
    "type": "errorType1",
    "remediation": "Remediation string...",
    "occurredAt": "2018-01-25T05:50:52.375Z",
    "errors": [
      {
        "_id": "ccdbe2c5c938a230667b3827",
        "message": "An optional embedded error"
      },
      {
        "_id": "dbe9088dcfe2460f229338a3",
        "message": "Another optional embedded error"
      }
    ],
    "_links": {
      "describedby": {
        "href": "https://developer.apiture.com/errors/errorType1"
      }
    }
  },
  "count": 0,
  "start": 0,
  "limit": 0,
  "name": "string"
}

Collection (v2.0.0)

A collection of resources. This is an abstract model schema which is extended to define specific resource collections.

This schema was resolved from common/collection.

Properties

NameDescription
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
count integer
The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter.
start integer
The start index of this page of items.
limit integer
The maximum number of items per page.
name string
The name of the collection.

contact

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:deactivate": {
      "href": "/contacts/inactiveContacts?contact=0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Contact (v1.1.2)

Representation of a contact resource. Contact data (mailing addresses, phone numbers, email addresses) for an individual.

Properties

NameDescription
kycAnswers kycAnswers
An object that contains the answers to Know Your Customer (KYC) questions.
Warning: The property kycAnswers was deprecated on version v1.0.0 of the schema. Use kycAnswers on the user schema in Users API instead. kycAnswers will be removed on version v2.0.0 of the schema.
identityVerificationStatus string
Use the state of identityVerification. The identity verification status for this person. This field is read-only and is derived from the results of any identity verification processes executed against the personally identifiable information (PII) contained in this record.
Warning: The property identityVerificationStatus was deprecated on version v1.0.0 of the schema. Use identity verification of the user in the Identity service instead. identityVerificationStatus will be removed on version v2.0.0 of the schema.
read-only


Enumerated values:
verified
unverified

identityVerification identityVerification
The identity verification data for this person. These fields are derived from the results of any identity verification processes executed against the personally identifiable information (PII) contained in this record.
Warning: The property identityVerification was deprecated on version v1.0.0 of the schema. Use identity verification of the user in the Identity service instead. identityVerification will be removed on version v2.0.0 of the schema.
firstName string
The person's first name (or given name).
middleName string
The person's middle name.
lastName string
The person's last name (or surname).
addresses [address]
An array of postal/mailing addresses.
preferredMailingAddressId string
The preferred mailing address. This string is the _id of an address in the addresses array.
minLength: 1
maxLength: 4
emailAddresses [typedEmailAddress]
An array of email addresses.
preferredEmailAddressId string
The preferred email address. This string is the _id of an email address in the emailAddresses array.
minLength: 1
maxLength: 4
phones [phoneNumber]
An array of phone numbers.
preferredPhoneId string
The ID of preferred phone number. This string is the _id of a phone number in the phones array.
minLength: 1
maxLength: 4
prefix string
A title or honorific prefix such as Dr. or Fr.
maxLength: 20
suffix string
A title or honorific suffix such as PhD or DDS.
maxLength: 20
preferredName string
The contact's preferred name. This is how the contact's name is presented to the user in the interface. The default is the contact's firstName.
identification [identification]
A collection of official identifying information associated with the contact.
preferredContactMethod preferredContactMethod
The contact's preferred method of communication.
birthdate string(date)
The contact's birth date in YYYY-MM-DD format.
citizenship citizenship
This individual's citizenship or nationality status.
residencyStatus residencyStatus
This individual's residency status.
occupation occupation
The occupation of this individual.
otherOccupation string
The actual occupation of this individual if their occupation is other. This is ignored if occupation is not other.
minLength: 4
maxLength: 32
yearsAtAddress yearsAtAddress
The number of years the person has been at their present home address.
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
state contactState
The state of this person's record.
read-only
_id string
The unique identifier for this contact resource. This is an immutable opaque string.
read-only
attributes object
An optional map of name/value pairs which provide additional metadata about the contact.
createdAt string(date-time)
The date-time when the contact was created.
updatedAt string(date-time)
The date-time when the contact was updated

contactState

"inactive"

Contact State (v1.0.0)

The state of this person. The values are described in the contactState text via the getLabels operation.

contactState strings may have one of the following enumerated values:

ValueDescription
inactiveInactive: A new contact, not yet activated.
activeActive: An activated contact record.
mergedMerged: A contact record resulting from merging other contacts.
removedRemoved: A removed, no longer available contact.

These enumeration values are further described by the label group named contactState in the response from the getLabels operation.

Type: string
Enumerated values:
inactive
active
merged
removed

contactVerificationFields

{
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550159"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active"
}

Contact Fields (v1.1.1)

Common fields of the contact resource used to build other model schemas for people who hold bank accounts.
Warning: The schema contactVerificationFields was deprecated on version v0.19.0 of the API. Use corresponding properties on the user schema in Users API instead. contactVerificationFields will be removed on version v0.21.0 of the API.

Properties

NameDescription
kycAnswers kycAnswers
An object that contains the answers to Know Your Customer (KYC) questions.
Warning: The property kycAnswers was deprecated on version v1.0.0 of the schema. Use kycAnswers on the user schema in Users API instead. kycAnswers will be removed on version v2.0.0 of the schema.
identityVerificationStatus string
Use the state of identityVerification. The identity verification status for this person. This field is read-only and is derived from the results of any identity verification processes executed against the personally identifiable information (PII) contained in this record.
Warning: The property identityVerificationStatus was deprecated on version v1.0.0 of the schema. Use identity verification of the user in the Identity service instead. identityVerificationStatus will be removed on version v2.0.0 of the schema.
read-only


Enumerated values:
verified
unverified

identityVerification identityVerification
The identity verification data for this person. These fields are derived from the results of any identity verification processes executed against the personally identifiable information (PII) contained in this record.
Warning: The property identityVerification was deprecated on version v1.0.0 of the schema. Use identity verification of the user in the Identity service instead. identityVerification will be removed on version v2.0.0 of the schema.

contacts

{
  "_profile": "https://api.apiture.com/schemas/contacts/contacts/v1.1.2/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "contacts",
  "_links": {
    "self": {
      "href": "/contacts/contacts?start=10&limit=10"
    },
    "first": {
      "href": "/contacts/contacts?start=0&limit=10"
    },
    "next": {
      "href": "/contacts/contacts?start=20&limit=10"
    },
    "collection": {
      "href": "/contacts/contacts"
    }
  },
  "_embedded": {
    "items": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/contacts/contact/v1.1.2/profile.json",
      "_links": {
        "self": {
          "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "firstName": "John",
      "middleName": "Daniel",
      "lastName": "Smith",
      "preferredName": "John",
      "suffix": "MD",
      "identification": [
        {
          "type": "taxId",
          "value": "*****3333"
        }
      ],
      "emailAddresses": [
        {
          "_id": "pe1",
          "value": "api@apiture.com",
          "type": "personal"
        },
        {
          "_id": "we1",
          "value": "support@apiture.com",
          "type": "work"
        }
      ],
      "phones": [
        {
          "_id": "hp1",
          "type": "home",
          "number": "+19105550155"
        },
        {
          "_id": "mp1",
          "type": "mobile",
          "number": "+19105550155"
        }
      ],
      "birthdate": "1974-10-27",
      "citizenship": [
        {
          "countryCode": "US",
          "state": "citizen"
        }
      ],
      "residencyStatus": "resident",
      "occupation": "officeAndAdministrativeSupport",
      "addresses": [
        {
          "type": "home",
          "addressLine1": "555 N Front Street",
          "addressLine2": "Suite 5555",
          "city": "Wilmington",
          "regionCode": "NC",
          "postalCode": "28401-5405",
          "countryCode": "US"
        },
        {
          "type": "work",
          "addressLine1": "123 S 3rd Street",
          "addressLine2": "Apt 42",
          "city": "Wilmington",
          "regionCode": "NC",
          "postalCode": "28411-5405",
          "countryCode": "US"
        }
      ],
      "yearsAtAddress": 3,
      "mailingDifferentAddress": false,
      "state": "active"
    }
  }
}

Contact Collection (v1.1.2)

Collection of contacts. The items in the collection are ordered in the _embedded.items array; the name is contacts. The top-level _links object may contain pagination links such as self, next, prev, first, last, collection.

Properties

NameDescription
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
Embedded objects.
» items [summaryContact]
An array containing a page of contact items.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
count integer
The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter.
start integer
The start index of this page of items.
limit integer
The maximum number of items per page.
name string
The name of the collection.

createAuthorization

{
  "type": "joint",
  "role": "Chief Financial Officer",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "taxId": "*****3333",
  "citizen": true,
  "addresses": [
    {
      "_id": "ha5",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "id": "wa0",
      "type": "other",
      "label": "mailing",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha5",
  "emailAddress": "JohnDanielSmith@example.com",
  "_links": {
    "apiture:user": {
      "href": "/users/users/bd9e7a93-32cc-435d-ac57-f21faa082318"
    }
  }
}

Create Authorization (v1.0.0)

The object representation of a newly created authorization. The fields listed will assist in the information needed to gain access to a bank account or organization. A link to the user must be passed in _links as apiture:user for implementations of this object as it explains the direct association.
Warning: The schema createAuthorization was deprecated on version v0.19.0 of the API. Use createAuthorization schema in Organizations API instead. createAuthorization will be removed on version v0.20.0 of the API.

Properties

NameDescription
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
firstName string
The person's first name (or given name).
middleName string
The person's middle name.
lastName string
The person's last name (or surname).
addresses [address]
An array of postal/mailing addresses.
preferredMailingAddressId string
The preferred mailing address. This string is the _id of an address in the addresses array.
minLength: 1
maxLength: 4
taxId string
Official government identification (tax ID) for this person. This will return a masked tax ID, where only the last 4 digits are visible. If the ?unmasked=true query parameter is passed, the full, unmasked tax ID is returned.
citizen boolean
Indicates if the person is a (US) citizen.
emailAddress string(email)
Optional email address.
userId string
The unique ID of the user. This is the _id value of the user resource from the Users API.
customerId string
The unique customer number, also known as the Customer Identification File number or CIF number. This derived value is assigned to the user in the banking core. The customerId differs from the _id (which is the ID of the resource in the Users API).
read-only
minLength: 1
maxLength: 100
type authorizationType

The type of this account access authorization.

  • primary the contact is the primary owner of a personal account. There may be only one primary owner. The target of the authorization is a single personal account.
  • joint the contact is a non-primary joint owner of a personal account. The target of the authorization is a single personal account.
  • authorizedSigner the contact is an authorized signer for a business account. The target of the authorization is an all business accounts owned by the organization.
role string
The person's role at the organization. This attribute is required when the authorization type is authorizedSigner.

createContact

{
  "_profile": "https://api.apiture.com/schemas/contacts/createContact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "112-22-3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active"
}

Create Contact (v1.1.2)

Representation used to create a new contact.

Properties

NameDescription
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
kycAnswers kycAnswers
An object that contains the answers to Know Your Customer (KYC) questions.
Warning: The property kycAnswers was deprecated on version v1.0.0 of the schema. Use kycAnswers on the user schema in Users API instead. kycAnswers will be removed on version v2.0.0 of the schema.
identityVerificationStatus string
Use the state of identityVerification. The identity verification status for this person. This field is read-only and is derived from the results of any identity verification processes executed against the personally identifiable information (PII) contained in this record.
Warning: The property identityVerificationStatus was deprecated on version v1.0.0 of the schema. Use identity verification of the user in the Identity service instead. identityVerificationStatus will be removed on version v2.0.0 of the schema.
read-only


Enumerated values:
verified
unverified

identityVerification identityVerification
The identity verification data for this person. These fields are derived from the results of any identity verification processes executed against the personally identifiable information (PII) contained in this record.
Warning: The property identityVerification was deprecated on version v1.0.0 of the schema. Use identity verification of the user in the Identity service instead. identityVerification will be removed on version v2.0.0 of the schema.
firstName string
The person's first name (or given name).
middleName string
The person's middle name.
lastName string (required)
The person's last name (or surname).
addresses [address]
An array of postal/mailing addresses.
preferredMailingAddressId string
The preferred mailing address. This string is the _id of an address in the addresses array.
minLength: 1
maxLength: 4
emailAddresses [typedEmailAddress]
An array of email addresses.
preferredEmailAddressId string
The preferred email address. This string is the _id of an email address in the emailAddresses array.
minLength: 1
maxLength: 4
phones [phoneNumber]
An array of phone numbers.
preferredPhoneId string
The ID of preferred phone number. This string is the _id of a phone number in the phones array.
minLength: 1
maxLength: 4
prefix string
A title or honorific prefix such as Dr. or Fr.
maxLength: 20
suffix string
A title or honorific suffix such as PhD or DDS.
maxLength: 20
preferredName string
The contact's preferred name. This is how the contact's name is presented to the user in the interface. The default is the contact's firstName.
identification [identification]
A collection of official identifying information associated with the contact.
preferredContactMethod preferredContactMethod
The contact's preferred method of communication.
birthdate string(date)
The contact's birth date in YYYY-MM-DD format.
citizenship citizenship
This individual's citizenship or nationality status.
residencyStatus residencyStatus
This individual's residency status.
occupation occupation
The occupation of this individual.
otherOccupation string
The actual occupation of this individual if their occupation is other. This is ignored if occupation is not other.
minLength: 4
maxLength: 32
yearsAtAddress yearsAtAddress
The number of years the person has been at their present home address.
attributes object
An optional map of name/value pairs which provide additional metadata about the contact.

emailType

"unknown"

Email Type (v1.0.0)

The kind of email address.

Warning: The enum list will be removed in a future release.

The allowed values for this property are defined at runtime in the label group named emailType in the response from the getLabels operation.

Type: string
Enumerated values:
unknown
personal
work
school
other
notApplicable

error

{
  "_id": "2eae46e1575c0a7b0115a4b3",
  "message": "Descriptive error message...",
  "statusCode": 422,
  "type": "errorType1",
  "remediation": "Remediation string...",
  "occurredAt": "2018-01-25T05:50:52.375Z",
  "errors": [
    {
      "_id": "ccdbe2c5c938a230667b3827",
      "message": "An optional embedded error"
    },
    {
      "_id": "dbe9088dcfe2460f229338a3",
      "message": "Another optional embedded error"
    }
  ],
  "_links": {
    "describedby": {
      "href": "https://developer.apiture.com/errors/errorType1"
    }
  }
}

Error (v2.0.0)

Describes an error in an API request or in a service called via the API.

This schema was resolved from common/error.

Properties

NameDescription
message string (required)
A localized message string describing the error condition.
_id string
A unique identifier for this error instance. This may be used as a correlation ID with the root cause error (i.e. this ID may be logged at the source of the error). This is is an opaque string.
read-only
statusCode integer
The HTTP status code associate with this error.
minimum: 100
maximum: 599
type string
An error identifier which indicates the category of error and associate it with API support documentation or which the UI tier can use to render an appropriate message or hint. This provides a finer level of granularity than the statusCode. For example, instead of just 400 Bad Request, the type may be much more specific. such as integerValueNotInAllowedRange or numericValueExceedsMaximum or stringValueNotInAllowedSet.
occurredAt string(date-time)
An RFC 3339 UTC time stamp indicating when the error occurred.
attributes attributes
Informative values or constraints which describe the error. For example, for a value out of range error, the attributes may specify the minimum and maximum values. This allows clients to present error messages as they see fit (the API does not assume the client/presentation tier). The set of attributes varies by error type.
remediation string
An optional localized string which provides hints for how the user or client can resolve the error.
errors [error]
An optional array of nested error objects. This property is not always present.
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

errorResponse

{
  "_profile": "https://api.apiture.com/schemas/common/errorResponse/v2.0.0/profile.json",
  "_error": {
    "_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
    "message": "The value for deposit must be greater than 0.",
    "statusCode": 422,
    "type": "positiveNumberRequired",
    "attributes": {
      "value": -125.5
    },
    "remediation": "Provide a value which is greater than 0",
    "occurredAt": "2018-01-25T05:50:52.375Z",
    "_links": {
      "describedby": {
        "href": "https://api.apiture.com/errors/positiveNumberRequired"
      }
    },
    "_embedded": {
      "errors": []
    }
  }
}

Error Response (v2.0.0)

Describes an error response, typically returned on 4xx or 5xx errors from API operations. The _error object contains the error details.

This schema was resolved from common/errorResponse.

Properties

NameDescription
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.

foreignPoliticalFigureAssociation

"unknown"

Foreign Political Figure Association (v1.0.0)

Describes if/how the person is associated with a foreign political figure.

foreignPoliticalFigureAssociation strings may have one of the following enumerated values:

ValueDescription
unknownUnknown
closeAssociateClose Associate: This person is a close associate of a foreign political figure.
familyMemberFamily Member: This person is a family of a foreign political figure.
noneNone: This person is not associated with a foreign political figure.
otherOther
notApplicableNot Applicable

These enumeration values are further described by the label group named foreignPoliticalFigureAssociation in the response from the getLabels operation.

Type: string
Enumerated values:
unknown
closeAssociate
familyMember
none
other
notApplicable

identification

{
  "type": "taxId",
  "value": "112-22-3333",
  "expiration": "2024-12-01"
}

Identification (v1.0.1)

Official identifying information associated with the contact.

Properties

NameDescription
value string (required)
The value of this form of identification, such as tax ID as a string. The caller should pass the full value (for example "112-22-3333") when creating a contact or user. The input value may include '-' formatting characters. This is a masked value in API responses, with one or more leading '*' characters and only the last four characters unmasked, such as "*****3333".
type identificationType (required)
The type of this form of identification.


Enumerated values:
taxId
passportNumber

expiration string(date)
The date when the form of identification expires, in RFC 3339 YYYY-MM-DD format.

identificationType

"taxId"

Identification Type (v1.0.0)

The type of this form of identification.

identificationType strings may have one of the following enumerated values:

ValueDescription
taxIdTax ID: The government tax ID, such as a Social Security Number
passportNumberPassport Number

These enumeration values are further described by the label group named identificationType in the response from the getLabels operation.

Type: string
Enumerated values:
taxId
passportNumber

identityVerification

{
  "provider": "string",
  "sessionId": "string",
  "scoredAt": "2019-09-13T06:11:01.375Z",
  "score": "passed",
  "state": "verified"
}

Identity Verification Data (v1.1.0)

Data points on the identity verification process that tells if a user has passed, failed or expired the identity check.
Warning: The schema identityVerification was deprecated on version v0.19.0 of the API. Use identity verification of the user in the Identity service instead. identityVerification will be removed on version v0.21.0 of the API.

Properties

NameDescription
provider string
The name of the identity verification provider.
Warning: The property provider was deprecated on version v1.1.0 of the schema. Use identity verification of the user in the Identity service instead. provider will be removed on version v2.0.0 of the schema.
sessionId string
The unique id for a session of the identity verification process.
Warning: The property sessionId was deprecated on version v1.1.0 of the schema. Use identity verification of the user in the Identity service instead. sessionId will be removed on version v2.0.0 of the schema.
scoredAt string(date-time)
The date-time when the provider ran identity verification. This is an RFC 3339 time stamp.
Warning: The property scoredAt was deprecated on version v1.1.0 of the schema. Use identity verification of the user in the Identity service instead. scoredAt will be removed on version v2.0.0 of the schema.
score string
The indication if the contact has passed or failed the identity verification process.
Warning: The property score was deprecated on version v1.1.0 of the schema. Use identity verification of the user in the Identity service instead. score will be removed on version v2.0.0 of the schema.


Enumerated values:
passed
failed
expired

state string
The identity verification status for this person. This field is read-only and is derived from the results of any identity verification processes executed against the personally identifiable information (PII) contained in this record.
Warning: The property state was deprecated on version v1.1.0 of the schema. Use identity verification of the user in the Identity service instead. state will be removed on version v2.0.0 of the schema.
read-only


Enumerated values:
verified
unverified

kycAnswers

{
  "foreignPoliticalFigure": false,
  "foreignPoliticalFigureCountry": "st",
  "foreignPoliticalFigureAssociation": "unknown"
}

Know Your Customer Answers (v1.1.0)

Answers to 'Know Your Customer' questions which allow financial institutions to conform to a customer identification program.
Warning: The schema kycAnswers was deprecated on version v0.19.0 of the API. Use kycAnswers on user schema in Users API instead. kycAnswers will be removed on version v0.21.0 of the API.

Properties

NameDescription
foreignPoliticalFigure boolean
true if the person is a foreign senior political figure.
Default: false
foreignPoliticalFigureCountry string
If the person is a foreign senior political figure, this is the foreign country ISO 3166-1 country code. This field is omitted if foreignPoliticalFigure is false.
maxLength: 2
foreignPoliticalFigureAssociation foreignPoliticalFigureAssociation
The type of association to a foreign political figure.

labelGroup

{
  "unknown": {
    "label": "Unknown",
    "code": "0",
    "hidden": true
  },
  "under1Million": {
    "label": "Under $1M",
    "code": "1",
    "range": "[0,1000000.00)",
    "variants": {
      "fr": {
        "label": "Moins de $1M"
      }
    }
  },
  "from1to10Million": {
    "label": "$1M to $10M",
    "code": "2",
    "range": "[1000000.00,10000000.00)",
    "variants": {
      "fr": {
        "label": "$1M \\u00e0 $10M"
      }
    }
  },
  "from10to100Million": {
    "label": "$10M to $100M",
    "code": "3",
    "range": "[10000000.00,100000000.00)",
    "variants": {
      "fr": [
        "label $10M \\u00e0 $100M"
      ]
    }
  },
  "over100Million": {
    "label": "Over $100,000,000.00",
    "code": "4",
    "range": "[100000000.00,]",
    "variants": {
      "fr": {
        "label": "Plus de $10M"
      }
    }
  },
  "other": {
    "label": "Other",
    "code": 254
  }
}

Label Group (v1.0.0)

A map that defines labels for the items in a group. This is a map from each item namea labelItem object. For example, consider a JSON response that includes a property named revenueEstimate; the values for revenueEstimate must be one of the items in the group named estimatedAnnualRevenue, with options ranging under1Million, to over100Million. The item name is used as the selected value in an Apiture representation, such as { ..., "revenueEstimate" : "from10to100Million" , ...}, and the item with the name from10to100Million defines the presentation labels for that item, as well as other metadata about that choice: this is the range [10000000.00,100000000.00).

This allows the client to let the user select a value from a list, such as the following derivde from the labels in the example:

Note that the other item is hidden from the selection list, as that item is marked as hidden. For items which define numeric ranges, a client may instead let the customer directly enter their estimated annual revenue as a number, such as 4,500,000.00. The client can then match that number to one of ranges in the items and set the revenueEstimate to the corresponding item's name: { ..., "revenueEstimate" : "from1to10Million", ... }.

This schema was resolved from common/labelGroup.

Properties

NameDescription
additionalProperties labelItem
An item in a labelGroup, with a set of variants which contains different localized labels for the item. Each (simpleLabel) variant defines the presentation text label and optional description for a language. Items may also have a lookup code to map to external syststems, a numeric range, and a hidden boolean to indicate the item is normally hidden in the UI.

This schema was resolved from common/labelItem.

labelGroups

{
  "_profile": "https://api.apiture.com/schemas/common/labelGroups/v1.0.1/profile.json",
  "groups": {
    "structure": {
      "unknown": {
        "label": "Unknown",
        "code": "0",
        "hidden": true
      },
      "corporation": {
        "label": "Corporation",
        "code": "1",
        "variants": {
          "fr": {
            "label": "Soci\\u00e9t\\u00e9"
          }
        }
      },
      "partnership": {
        "label": "Partnership",
        "code": "2",
        "variants": {
          "fr": {
            "label": "Partenariat"
          }
        }
      },
      "llc": {
        "label": "Limited Liability Company",
        "code": "2",
        "variants": {
          "fr": {
            "label": "Soci\\u00e9t\\u00e9 \\u00e9 Responsabilit\\u00e9 Limit\\u00e9e"
          }
        }
      },
      "nonProfit": {
        "label": "Non Profit",
        "code": "4",
        "variants": {
          "fr": {
            "label": "Non Lucratif"
          }
        }
      },
      "financialInstitution": {
        "label": "Financial Institution",
        "code": "8",
        "variants": {
          "fr": {
            "label": "Institution financi\\u00e8re"
          }
        }
      },
      "soleProprietorship": {
        "label": "Sole Proprietorship",
        "code": "11",
        "variants": {
          "fr": {
            "label": "Entreprise individuelle"
          }
        }
      },
      "other": {
        "label": "Other",
        "code": "254",
        "variants": {
          "fr": {
            "label": "Autre"
          }
        }
      }
    },
    "estimatedAnnualRevenue": {
      "unknown": {
        "label": "Unknown",
        "code": "0"
      },
      "under1Million": {
        "label": "Under $1M",
        "code": "1",
        "range": "[0,1000000.00)"
      },
      "from1to10Million": {
        "label": "$1M to $10M",
        "code": "2",
        "range": "[1000000.00,10000000.00)"
      },
      "from10to100Million": {
        "label": "$10M to $100M",
        "code": "3",
        "range": "[10000000.00,100000000.00)"
      },
      "over100Million": {
        "label": "Over $100,000,000.00",
        "code": "4",
        "range": "[100000000.00,]"
      },
      "other": {
        "label": "Other",
        "code": "254"
      }
    }
  }
}

Label Groups (v1.0.1)

A set of named groups of labels, each of which contains multiple item labels.

The abbreviated example shows two groups, one named structure and one named estimatedAnnualRevenue. The first has items with names such as corporation, llc and soleProprietorship, with text labels for each in the default and in French. The second has items for estimated revenue ranges but no localized labels. For example, the item named from1to10Million has the label "$1M to $10M" and the range [1000000.00,10000000.00).

This schema was resolved from common/labelGroups.

Properties

NameDescription
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
groups object
Groups of localized labels. This maps group namesa group of labels within that group.
» additionalProperties labelGroup
A map that defines labels for the items in a group. This is a map from each item namea labelItem object. For example, consider a JSON response that includes a property named revenueEstimate; the values for revenueEstimate must be one of the items in the group named estimatedAnnualRevenue, with options ranging under1Million, to over100Million. The item name is used as the selected value in an Apiture representation, such as { ..., "revenueEstimate" : "from10to100Million" , ...}, and the item with the name from10to100Million defines the presentation labels for that item, as well as other metadata about that choice: this is the range [10000000.00,100000000.00).

This allows the client to let the user select a value from a list, such as the following derivde from the labels in the example:

  • Unknown
  • Under $1M
  • $1M to $10M
  • $10M to $100M
  • $100M or more

Note that the other item is hidden from the selection list, as that item is marked as hidden. For items which define numeric ranges, a client may instead let the customer directly enter their estimated annual revenue as a number, such as 4,500,000.00. The client can then match that number to one of ranges in the items and set the revenueEstimate to the corresponding item's name: { ..., "revenueEstimate" : "from1to10Million", ... }.

This schema was resolved from common/labelGroup.

labelItem

{
  "over100Million": {
    "label": "Over $100,000,000.00",
    "code": "4",
    "range": "[100000000.00,]",
    "variants": {
      "fr": {
        "label": "Plus de $10M"
      }
    }
  }
}

Label Item (v1.0.0)

An item in a labelGroup, with a set of variants which contains different localized labels for the item. Each (simpleLabel) variant defines the presentation text label and optional description for a language. Items may also have a lookup code to map to external syststems, a numeric range, and a hidden boolean to indicate the item is normally hidden in the UI.

This schema was resolved from common/labelItem.

Properties

NameDescription
label string
A label or title which may be used as labels or other UI controls which present a value.
description string
A more detailed localized description of a localizable label.
variants object
The language-specific variants of this label. The keys in this object are RFC 7231 language codes.
» additionalProperties simpleLabel
A text label and optional description.

This schema was resolved from common/simpleLabel.

code string
If the localized value is associated with an external standard or definition, this is a lookup code or key or URI for that value.
minLength: 1
hidden boolean
If true, this item is normally hidden from the User Interface.
range string
The range of values, if the item describes a bounded numeric value. This is range notation such as [min,max], (exclusiveMin,max], [min,exclusiveMax), or (exclusiveMin,exclusiveMax). For example, [0,100) is the range greater than or equal to 0 and less than 100. If the min or max value are omitted, that end of the range is unbounded. For example, (,1000.00) means less than 1000.00 and [20000.00,] means 20000.00 or more. The ranges do not overlap or have gaps.
pattern: ^[\[\(](-?(0|[1-9][0-9]*)(\.[0-9]+)?)?,(-?(0|[1-9][0-9]*)(\.[0-9]+)?)?[\]\)]$

{
  "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
  "title": "Applicant"
}

Link (v1.0.0)

Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.

This schema was resolved from common/link.

Properties

NameDescription
href string(uri) (required)
The URI or URI template for the resource/operation this link refers to.
type string
The media type for the resource.
templated boolean
If true, the link's href is a URI template.
title string
An optional human-readable localized title for the link.
deprecation string(uri)
If present, the containing link is deprecated and the value is a URI which provides human-readable text information about the deprecation.
profile string(uri)
The URI of a profile document, a JSON document which describes the target resource/operation.

{
  "property1": {
    "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
    "title": "Applicant"
  },
  "property2": {
    "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
    "title": "Applicant"
  }
}

Links (v1.0.0)

An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

Properties

NameDescription
additionalProperties link
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.

This schema was resolved from common/link.

occupation

"unknown"

Occupation (v1.0.0)

The person's occupation.

Warning: The enum list will be removed in a future release.

The allowed values for this property are defined at runtime in the label group named occupation in the response from the getLabels operation.

Type: string
Enumerated values:
unknown
architectureAndEngineering
artsDesignEntertainmentSportsAndMedia
buildingAndGroundsCleaningAndMaintenance
businessAndFinancialOperations
communityAndSocialService
computerAndMathematical
constructionAndExtraction
educationTrainingAndLibrary
farmingFishingAndForestry
foodPreparationAndServingRelated
healthcarePractitionersAndTechnical
healthcareSupport
installationMaintenanceAndRepair
legal
lifePhysicalAndSciences
management
militarySpecific
officeAndAdministrativeSupport
personalCareAndService
production
protectiveServices
salesAndRelated
transportationAndMaterialMoving
other
notApplicable

phoneNumber

{
  "_id": "hp1",
  "type": "home",
  "number": "+19105550155"
}

Phone Number (v1.0.1)

A phone number and its role.

Properties

NameDescription
type phoneNumberType (required)
The type or role of this phone number.
number string (required)
The phone number, as a string. The service strips all spaces, hyphens, periods and parentheses from input. The default country code prefix is +1. Phone numbers are returned in responses in E.164 format with a leading +, country code (up to 3 digits) and subscriber number for a total of up to 15 digits. See Phone Number Representations for more information.
minLength: 8
maxLength: 20
label string
A text label, suitable for presentation to the end user. This is also used if type is other.
maxLength: 32
_id string
An identifier for this phone number, so that it can be referenced uniquely. The service will assign a unique _id if the client does not provide one. The _id must be unique across all phone numbers within the phones array.
minLength: 1
maxLength: 8
pattern: ^[-a-zA-Z0-9_]{1,8}$

phoneNumberType

"unknown"

Phone Number Type (v1.0.0)

The type or role of this phone number.

Warning: The enum list will be removed in a future release.

The allowed values for this property are defined at runtime in the label group named phoneNumberType in the response from the getLabels operation.

Type: string
Enumerated values:
unknown
home
work
mobile
fax
other

preferredContactMethod

"unknown"

Preferred Contact Method (v1.0.0)

The contact's preferred method of communication.

Warning: The enum list will be removed in a future release.

The allowed values for this property are defined at runtime in the label group named preferredContactMethod in the response from the getLabels operation.

Type: string
Enumerated values:
unknown
sms
email
other
notApplicable

residencyStatus

"unknown"

Residency (v1.0.0)

Residency status.

Warning: The enum list will be removed in a future release.

The allowed values for this property are defined at runtime in the label group named residencyStatus in the response from the getLabels operation.

Type: string
Enumerated values:
unknown
resident
nonresident
residentAlien
nonresidentAlien
other
notApplicable

root

{
  "id": "apiName",
  "name": "API name",
  "apiVersion": "1.0.0",
  "_profile": "https://production.api.apiture.com/schemas/common/root/v2.0.0/profile.json",
  "_links": {}
}

API Root (v2.0.0)

A HAL response, with hypermedia _links for the top-level resources and operations in API.

This schema was resolved from common/root.

Properties

NameDescription
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
_id string
This API's unique ID.
read-only
name string
This API's name.
apiVersion string
This API's version.

simpleContact

{
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "emailAddresses": [
    {
      "id": "pe0",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "id": "wp1",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "pe0",
  "phones": [
    {
      "_id": "hp1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "mp1",
      "type": "mobile",
      "number": "+19105550159"
    }
  ],
  "preferredPhoneId": "hp1",
  "preferredContactMethod": "email"
}

Simple Contact (v1.0.2)

Basic contact and identification information for a person, consisting of the name, mailing address, phone numbers, email addresses, and government identification.

Properties

NameDescription
firstName string
The person's first name (or given name).
middleName string
The person's middle name.
lastName string
The person's last name (or surname).
addresses [address]
An array of postal/mailing addresses.
preferredMailingAddressId string
The preferred mailing address. This string is the _id of an address in the addresses array.
minLength: 1
maxLength: 4
emailAddresses [typedEmailAddress]
An array of email addresses.
preferredEmailAddressId string
The preferred email address. This string is the _id of an email address in the emailAddresses array.
minLength: 1
maxLength: 4
phones [phoneNumber]
An array of phone numbers.
preferredPhoneId string
The ID of preferred phone number. This string is the _id of a phone number in the phones array.
minLength: 1
maxLength: 4
prefix string
A title or honorific prefix such as Dr. or Fr.
maxLength: 20
suffix string
A title or honorific suffix such as PhD or DDS.
maxLength: 20
preferredName string
The contact's preferred name. This is how the contact's name is presented to the user in the interface. The default is the contact's firstName.
identification [identification]
A collection of official identifying information associated with the contact.
preferredContactMethod preferredContactMethod
The contact's preferred method of communication.

simpleLabel

{
  "label": "Board of Directors",
  "description": "string"
}

Simple Label (v1.0.0)

A text label and optional description.

This schema was resolved from common/simpleLabel.

Properties

NameDescription
label string (required)
A label or title which may be used as labels or other UI controls which present a value.
description string
A more detailed localized description of a localizable label.

summaryContact

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/contacts/summaryContact/v1.1.2/profile.json",
  "firstName": "John",
  "middleName": "Daniel",
  "lastName": "Smith",
  "preferredName": "John",
  "suffix": "MD",
  "identification": [
    {
      "type": "taxId",
      "value": "*****3333"
    }
  ],
  "emailAddresses": [
    {
      "_id": "ea1",
      "value": "api@apiture.com",
      "type": "personal"
    },
    {
      "_id": "ek3",
      "value": "support@apiture.com",
      "type": "work"
    }
  ],
  "preferredEmailAddressId": "ea1",
  "phones": [
    {
      "_id": "pa1",
      "type": "home",
      "number": "+19105550155"
    },
    {
      "_id": "da6",
      "type": "mobile",
      "number": "+19105550155"
    }
  ],
  "preferredPhoneId": "pa1",
  "birthdate": "1974-10-27",
  "citizenship": [
    {
      "countryCode": "US",
      "state": "citizen"
    }
  ],
  "residencyStatus": "resident",
  "occupation": "officeAndAdministrativeSupport",
  "addresses": [
    {
      "_id": "ha1",
      "type": "home",
      "addressLine1": "555 N Front Street",
      "addressLine2": "Suite 5555",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28401-5405",
      "countryCode": "US"
    },
    {
      "_id": "wa1",
      "type": "work",
      "addressLine1": "123 S 3rd Street",
      "addressLine2": "Apt 42",
      "city": "Wilmington",
      "regionCode": "NC",
      "postalCode": "28411-5405",
      "countryCode": "US"
    }
  ],
  "preferredMailingAddressId": "ha1",
  "yearsAtAddress": 3,
  "mailingDifferentAddress": false,
  "state": "active",
  "_links": {
    "self": {
      "href": "/contacts/contacts/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Contact Summary (v1.1.2)

Summary representation of a contact resource in contacts collections. This representation normally does not contain any _embedded objects. If needed, call the GET operation on the item's self link to get _embedded objects.

Properties

NameDescription
kycAnswers kycAnswers
An object that contains the answers to Know Your Customer (KYC) questions.
Warning: The property kycAnswers was deprecated on version v1.0.0 of the schema. Use kycAnswers on the user schema in Users API instead. kycAnswers will be removed on version v2.0.0 of the schema.
identityVerificationStatus string
Use the state of identityVerification. The identity verification status for this person. This field is read-only and is derived from the results of any identity verification processes executed against the personally identifiable information (PII) contained in this record.
Warning: The property identityVerificationStatus was deprecated on version v1.0.0 of the schema. Use identity verification of the user in the Identity service instead. identityVerificationStatus will be removed on version v2.0.0 of the schema.
read-only


Enumerated values:
verified
unverified

identityVerification identityVerification
The identity verification data for this person. These fields are derived from the results of any identity verification processes executed against the personally identifiable information (PII) contained in this record.
Warning: The property identityVerification was deprecated on version v1.0.0 of the schema. Use identity verification of the user in the Identity service instead. identityVerification will be removed on version v2.0.0 of the schema.
firstName string
The person's first name (or given name).
middleName string
The person's middle name.
lastName string
The person's last name (or surname).
addresses [address]
An array of postal/mailing addresses.
preferredMailingAddressId string
The preferred mailing address. This string is the _id of an address in the addresses array.
minLength: 1
maxLength: 4
emailAddresses [typedEmailAddress]
An array of email addresses.
preferredEmailAddressId string
The preferred email address. This string is the _id of an email address in the emailAddresses array.
minLength: 1
maxLength: 4
phones [phoneNumber]
An array of phone numbers.
preferredPhoneId string
The ID of preferred phone number. This string is the _id of a phone number in the phones array.
minLength: 1
maxLength: 4
prefix string
A title or honorific prefix such as Dr. or Fr.
maxLength: 20
suffix string
A title or honorific suffix such as PhD or DDS.
maxLength: 20
preferredName string
The contact's preferred name. This is how the contact's name is presented to the user in the interface. The default is the contact's firstName.
identification [identification]
A collection of official identifying information associated with the contact.
preferredContactMethod preferredContactMethod
The contact's preferred method of communication.
birthdate string(date)
The contact's birth date in YYYY-MM-DD format.
citizenship citizenship
This individual's citizenship or nationality status.
residencyStatus residencyStatus
This individual's residency status.
occupation occupation
The occupation of this individual.
otherOccupation string
The actual occupation of this individual if their occupation is other. This is ignored if occupation is not other.
minLength: 4
maxLength: 32
yearsAtAddress yearsAtAddress
The number of years the person has been at their present home address.
_links links
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
_embedded object
An optional map of nested resources, mapping each nested resource name to a nested resource representation.
_profile string(uri)
The URI of a resource profile which describes the representation.
_error error
An object which describes an error. This value is omitted if the operation succeeded without error.
state contactState
The state of this person's record.
read-only
_id string
The unique identifier for this contact resource. This is an immutable opaque string.
read-only

typedEmailAddress

{
  "value": "JohnBankCustomer@example.com",
  "type": "unknown",
  "_id": "ha3"
}

Email Address (v1.0.0)

An email address and the email address type.

Properties

NameDescription
value string(email)
The email address, such as JohnBankCustomer@example.com
minLength: 8
maxLength: 120
type emailType
The kind of email address.
_id string
An identifier for this email address, so that it can be referenced uniquely. The service will assign a unique _id if the client does not provide one. The _id must be unique across all email addresses within the emailAddresses array.
minLength: 1
maxLength: 8
pattern: ^[-a-zA-Z0-9_]{1,8}$

yearsAtAddress

"unknown"

Years at Address (v1.0.0)

Categories for how long the person has been at their present home address.

Type: string
Enumerated values:
unknown
oneOrFewer
two
three
fourOrMore