Approvals v0.8.1
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
This API manages state-transition based approvals for Financial Institutions. Approval milestones are useful in confirming that part or all of a process is complete.
Examples of approvals may include Identity Verification Document approval or Account Application approval.
Approval States may be one of the following:
- openCreated but pending input subject to approval
- submittedPending review by approver
- approvedApproval granted
- rejectedApproval denied
- waivedApproval forgiven
- returnedApprover returns approval for modification
- canceledApproval request withdrawn
Allowed state transitions are:
- open->- submitted
- open->- waived
- submitted->- approved
- submitted->- rejected
- submitted->- waived
- submitted->- returned
- returned->- submitted
- open->- canceled
- submitted->- canceled
- returned->- canceled
The above state transitions may be prohibited based on the disallowedStates field in an approvalType.
An approval may only be deleted if its state is open or canceled. In order to change the state, use POST to  the href in the corresponding  links (apiture:approve, apiture:submit, apiture:reject, etc.). in the approval resource as described fully in the Approval schema.
All approval resources contain an approval type, a resource that is also managed in this API. Approval types provide financial institutions the ability to track, reconcile and group specific approvals. In addition, metadata regarding specific types of approvals can be stored on the approval type. Approval types may only be deleted if they are not in use by any existing approvals. Some examples of approval types may be specific documents related to new account opening that need to be manually approved, account applications or transfer requests.
Approval types may also indicate which approval states are not allowed. For example, some uses of Approvals need to disallow waived or returned.
The target of the approval, which may be any resource, is not required but may be provided on the POST operation that creates the approval. This may be done in the _links with the link relation apiture:target. Alternatively, the content to be approved may be embedded within the attributes on the approval request. It will also be conveyed in the approval representation in the GET operation on the instance and the summary representation in the /approvals collection. Some target examples may include an account application or a document.
Additional data related to an approval or approval type may be stored in the resource's attributes. Attributes can be modified through PATCH and are not copied from the approval type to the approval.
Download OpenAPI Definition (YAML)
Base URLs:
Authentication
- API Key (apiKey)- header parameter: API-Key
- API Key based authentication. Each client application must pass its private, unique API key, allocated in the developer portal, via the API-Key: {api-key}request header.
 
- OAuth2 authentication  (accessToken)- OAuth2 client access token authentication. The client authenticates against the server at authorizationUrl, passing the client's privateclientId(and optional andclientSecret) as part of this flow. The client obtains an access token from the server attokenUrl. It then passes the received access token via theAuthorization: Bearer {access-token}header in subsequent API calls. The authorization process also returns a refresh token which the client should use to renew the access token before it expires.
- Flow: authorizationCode
- Authorization URL = https://auth.apiture.com/oauth2/authorize
- Token URL = http://auth.apiture.com/auth/oauth2/token
 
- OAuth2 client access token authentication. The client authenticates against the server at 
| Scope | Scope Description | 
|---|---|
| data/read | Read access to non-account, non-profile data. | 
| data/write | Write (update) access to non-account, non-profile data. | 
| data/delete | Delete access to non-account, non-profile data. | 
| data/full | Full access to non-account, non-profile data. | 
API
Endpoints which describe this API.
getApi
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/approvals/ \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY'
GET https://api.devbank.apiture.com/approvals/ HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY'
};
$.ajax({
  url: 'https://api.devbank.apiture.com/approvals/',
  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('https://api.devbank.apiture.com/approvals/',
{
  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 'https://api.devbank.apiture.com/approvals/',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/hal+json',
  'API-Key': 'API_KEY'
}
r = requests.get('https://api.devbank.apiture.com/approvals/', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/");
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", "https://api.devbank.apiture.com/approvals/", 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.
Example responses
200 Response
{
  "id": "apiName",
  "name": "API name",
  "apiVersion": "1.0.0",
  "_profile": "http://localhost:8080/schemas/common/root/v1.0.0/profile.json",
  "_links": {}
}
Responses
getApiDoc
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/approvals/apiDoc \
  -H 'Accept: application/json' \
  -H 'API-Key: API_KEY'
GET https://api.devbank.apiture.com/approvals/apiDoc HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json
var headers = {
  'Accept':'application/json',
  'API-Key':'API_KEY'
};
$.ajax({
  url: 'https://api.devbank.apiture.com/approvals/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('https://api.devbank.apiture.com/approvals/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 'https://api.devbank.apiture.com/approvals/apiDoc',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'API-Key': 'API_KEY'
}
r = requests.get('https://api.devbank.apiture.com/approvals/apiDoc', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/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", "https://api.devbank.apiture.com/approvals/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.
Example responses
200 Response
{}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: Inline | 
Response Schema
Approval
getApprovals
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/approvals/approvals \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/approvals/approvals HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'
};
$.ajax({
  url: 'https://api.devbank.apiture.com/approvals/approvals',
  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('https://api.devbank.apiture.com/approvals/approvals',
{
  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 'https://api.devbank.apiture.com/approvals/approvals',
  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('https://api.devbank.apiture.com/approvals/approvals', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvals");
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", "https://api.devbank.apiture.com/approvals/approvals", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Return a collection of approvals
GET /approvals
Return a paginated sortable filterable searchable collection of approvals. The links in the response include pagination links.
Parameters
| Parameter | Description | 
|---|---|
| start(query) | integer(int64)The zero-based index of the first approval item to include in this page. The default 0 denotes the beginning of the collection. | 
| limit(query) | integer(int32)The maximum number of approval representations to return in this page. | 
| sortBy(query) | stringOptional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2. | 
| filter(query) | stringOptional filter criteria. See filtering. | 
| q(query) | stringOptional search string. See searching. | 
| state(query) | stringSubset the accounts or external accounts collection to those whose statematches this value. Use|to separate multiple values. For example,?state=submittedwill match only items whosestateissubmitted;?state=rejected|approvedwill match items whosestateisrejectedorapproved. This is combined with an implicitandwith other filters if they are used. See filtering.Enumerated values: opensubmittedapprovedrejectedwaivedreturnedcanceled | 
| label(query) | stringSubset the accounts or external accounts collection to those with this label value. Use | 
Example responses
200 Response
{
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "approvals",
  "_links": {
    "self": {
      "href": "/approvals/approvals?start=10&limit=10"
    },
    "first": {
      "href": "/approvals/approvals?start=0&limit=10"
    },
    "next": {
      "href": "/approvals/approvals?start=20&limit=10"
    },
    "collection": {
      "href": "/approvals/approvals"
    }
  },
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        },
        "state": "active",
        "done": true,
        "label": "Government Issued ID",
        "description": "A document that identifies a user",
        "reviewedBy": "/users/users/0399abed-fd3d-4830-a88b-30f38b8a365c",
        "reviewedAt": "2018-04-17T10:12:58.375Z"
      }
    ]
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approvals | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request.  The request body or one or more of the query parameters was not well formed.  The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
createApproval
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/approvals/approvals \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/approvals/approvals HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvals',
  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/approvals/approval/v1.0.0/profile.json"
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/approvals/approvals',
{
  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 'https://api.devbank.apiture.com/approvals/approvals',
  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('https://api.devbank.apiture.com/approvals/approvals', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvals");
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", "https://api.devbank.apiture.com/approvals/approvals", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Create a new approval
POST /approvals
Create a new approval in the approvals collection.  The link to an Approval Type resource is required in order to create a new Approval resource. This link should be passed in the _links in the request with an apiture:approvalType key. The optional target of an approval may be passed on Approval create in either the _links  with the link relation apiture:target or in attributes.
Body parameter
{
  "_profile": "https://api.apiture.com/schemas/approvals/approval/v1.0.0/profile.json"
}
Parameters
| Parameter | Description | 
|---|---|
| body(body) | createApproval(required)The data necessary to create a new approval. | 
Example responses
201 Response
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 201 | Created | 
| Created | |
| Schema: approval | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request.  The request body or one or more of the query parameters was not well formed.  The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
Response Headers
| Status | Description | 
|---|---|
| 201 | Locationstringuri | 
| 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 | ETagstring | 
| The ETagresponse header specifies an entity tag which must be provided in anIf-Matchrequest header forPUTorPATCHoperations which update the resource. | 
getApproval
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/approvals/approvals/{approvalId} \
  -H 'Accept: application/hal+json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/approvals/approvals/{approvalId} HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
  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('https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
{
  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 'https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
  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('https://api.devbank.apiture.com/approvals/approvals/{approvalId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvals/{approvalId}");
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", "https://api.devbank.apiture.com/approvals/approvals/{approvalId}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Fetch a representation of this approval
GET /approvals/{approvalId}
Return a HAL representation of this approval resource.
Parameters
| Parameter | Description | 
|---|---|
| approvalId(path) | string(required)The unique identifier of this approval. This is an opaque string. | 
| If-None-Match(header) | stringThe entity tag that was returned in the ETagresponse. If the resource's current entity tag matches, theGETwill return 304 (Not Modified) and no response body, else the resource representation will be returned. | 
Example responses
200 Response
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approval | 
| Status | Description | 
|---|---|
| 304 | Not Modified | 
| Not Modified. The resource has not been modified since it was last fetched. | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 404 | Not Found | 
| Not Found. There is no such approval resource at the specified {approvalId}. The_errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
Response Headers
| Status | Description | 
|---|---|
| 200 | ETagstring | 
| The ETagresponse header specifies an entity tag which must be provided in anIf-Matchrequest header forPUTorPATCHoperations which update this approval resource. | 
updateApproval
Code samples
# You can also use wget
curl -X PUT https://api.devbank.apiture.com/approvals/approvals/{approvalId} \
  -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 https://api.devbank.apiture.com/approvals/approvals/{approvalId} HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
  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/approvals/approvals/v1.0.0/profile.json"
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
{
  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 'https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
  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('https://api.devbank.apiture.com/approvals/approvals/{approvalId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvals/{approvalId}");
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", "https://api.devbank.apiture.com/approvals/approvals/{approvalId}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Update this approval
PUT /approvals/{approvalId}
Perform a complete replacement of this approval.
Body parameter
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json"
}
Parameters
| Parameter | Description | 
|---|---|
| approvalId(path) | string(required)The unique identifier of this approval. This is an opaque string. | 
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
| body(body) | updateApproval(required) | 
Example responses
200 Response
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approval | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request.  The request body or one or more of the query parameters was not well formed.  The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 404 | Not Found | 
| Not Found. There is no such approval resource at the specified {approvalId}. The_errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 412 | Precondition Failed | 
| Precondition Failed. The supplied if-Matchheader value does not match the most recentETagresponse header value. The resource has changed in the interim. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
Response Headers
| Status | Description | 
|---|---|
| 200 | ETagstring | 
| The ETagresponse header specifies an entity tag which must be provided in anIf-Matchrequest header forPUTorPATCHoperations which update this approval resource. | 
patchApproval
Code samples
# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/approvals/approvals/{approvalId} \
  -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 https://api.devbank.apiture.com/approvals/approvals/{approvalId} HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
  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/approvals/approvals/v1.0.0/profile.json"
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
{
  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 'https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
  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('https://api.devbank.apiture.com/approvals/approvals/{approvalId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvals/{approvalId}");
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", "https://api.devbank.apiture.com/approvals/approvals/{approvalId}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Update this approval
PATCH /approvals/{approvalId}
Perform a partial update of this approval. 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/approvals/approvals/v1.0.0/profile.json"
}
Parameters
| Parameter | Description | 
|---|---|
| approvalId(path) | string(required)The unique identifier of this approval. This is an opaque string. | 
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
| body(body) | updateApproval(required) | 
Example responses
200 Response
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approval | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request.  The request body or one or more of the query parameters was not well formed.  The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 404 | Not Found | 
| Not Found. There is no such approval resource at the specified {approvalId}. The_errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 412 | Precondition Failed | 
| Precondition Failed. The supplied if-Matchheader value does not match the most recentETagresponse header value. The resource has changed in the interim. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
Response Headers
| Status | Description | 
|---|---|
| 200 | ETagstring | 
| The ETagresponse header specifies an entity tag which must be provided in anIf-Matchrequest header forPUTorPATCHoperations which update this approval resource. | 
deleteApproval
Code samples
# You can also use wget
curl -X DELETE https://api.devbank.apiture.com/approvals/approvals/{approvalId} \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
DELETE https://api.devbank.apiture.com/approvals/approvals/{approvalId} HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
  method: 'delete',
  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('https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
{
  method: 'DELETE',
  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.delete 'https://api.devbank.apiture.com/approvals/approvals/{approvalId}',
  params: {
  }, 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.delete('https://api.devbank.apiture.com/approvals/approvals/{approvalId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvals/{approvalId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
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("DELETE", "https://api.devbank.apiture.com/approvals/approvals/{approvalId}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Delete this approval resource
DELETE /approvals/{approvalId}
Delete this approval resource and any resources that are owned by it.  an Approval may only be deleted if its state is open or canceled.
Parameters
| Parameter | Description | 
|---|---|
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
| approvalId(path) | string(required)The unique identifier of this approval. This is an opaque string. | 
Example responses
401 Response
{
  "_profile": "https://api.apiture.com/schemas/common/errorResponse/v1.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": []
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 204 | No Content | 
| No Content. The resource was deleted successfully. | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 412 | Precondition Failed | 
| Precondition Failed. The supplied if-Matchheader value does not match the most recentETagresponse header value. The resource has changed in the interim. | |
| Schema: errorResponse | 
approveApproval
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/approvals/approvedApprovals?approval=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/approvals/approvedApprovals?approval=string HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvedApprovals',
  method: 'post',
  data: '?approval=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('https://api.devbank.apiture.com/approvals/approvedApprovals?approval=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 'https://api.devbank.apiture.com/approvals/approvedApprovals',
  params: {
  'approval' => '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('https://api.devbank.apiture.com/approvals/approvedApprovals', params={
  'approval': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvedApprovals?approval=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", "https://api.devbank.apiture.com/approvals/approvedApprovals", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Approve an approval
POST /approvedApprovals
Approve an approval.
Only product types which are submitted may be approved.
This operation is invoked from the apiture:approve link on a product type when it is eligible to be approved.
This changes the state to approved.
Parameters
| Parameter | Description | 
|---|---|
| approval(query) | string(required)A server-generated key which identifies an existing approval resource. | 
| approvalUri(query) | stringThe URI of an existing approval which is eligible to be approved. Note: This parameter is deprecated and will be removed in the next version. Use ?approval=instead. | 
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
Example responses
200 Response
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approval | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request. The approvalorapprovalUriparameter was malformed or does not refer to an approval. | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 409 | Conflict | 
| Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following: 
 | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
rejectApproval
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/approvals/rejectedApprovals?approval=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/approvals/rejectedApprovals?approval=string HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/rejectedApprovals',
  method: 'post',
  data: '?approval=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('https://api.devbank.apiture.com/approvals/rejectedApprovals?approval=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 'https://api.devbank.apiture.com/approvals/rejectedApprovals',
  params: {
  'approval' => '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('https://api.devbank.apiture.com/approvals/rejectedApprovals', params={
  'approval': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/rejectedApprovals?approval=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", "https://api.devbank.apiture.com/approvals/rejectedApprovals", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Reject an approval
POST /rejectedApprovals
Reject an approval.
 Only product types which are submitted may be rejected. 
 This operation is invoked from the apiture:reject link on a product type when it is eligible to be rejected. 
 This changes the state to rejected.
Parameters
| Parameter | Description | 
|---|---|
| approval(query) | string(required)A server-generated key which identifies an existing approval resource. | 
| approvalUri(query) | stringThe URI of an existing approval which is eligible to be rejected. Note: This parameter is deprecated and will be removed in the next version. Use ?approval=instead. | 
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
Example responses
200 Response
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approval | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request. The approvalorapprovalUriwas malformed or does not refer to an approval. | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 409 | Conflict | 
| Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following: 
 | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
waiveApproval
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/approvals/waivedApprovals?approval=string&approvalUri=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/approvals/waivedApprovals?approval=string&approvalUri=string HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/waivedApprovals',
  method: 'post',
  data: '?approval=string&approvalUri=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('https://api.devbank.apiture.com/approvals/waivedApprovals?approval=string&approvalUri=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 'https://api.devbank.apiture.com/approvals/waivedApprovals',
  params: {
  'approval' => 'string',
'approvalUri' => '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('https://api.devbank.apiture.com/approvals/waivedApprovals', params={
  'approval': 'string',  'approvalUri': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/waivedApprovals?approval=string&approvalUri=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", "https://api.devbank.apiture.com/approvals/waivedApprovals", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Waive an approval
POST /waivedApprovals
Waive an approval.
 Only product types which are open or submitted may be waived. 
 This operation is invoked from the apiture:waive link on a product type when it is eligible to be waived. 
 This changes the state to waived.
Parameters
| Parameter | Description | 
|---|---|
| approval(query) | string(required)A server-generated key which identifies an existing approval resource. | 
| approvalUri(query) | string(required)The URI of an existing approval which is eligible to be waived. Note: This parameter is deprecated and will be removed in the next version. Use ?approval=instead. | 
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
Example responses
200 Response
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approval | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request. The 'approval orapprovalUri` was malformed or does not refer to an approval. | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 409 | Conflict | 
| Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following: 
 | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
submitApproval
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/approvals/submittedApprovals?approval=string&approvalUri=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/approvals/submittedApprovals?approval=string&approvalUri=string HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/submittedApprovals',
  method: 'post',
  data: '?approval=string&approvalUri=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('https://api.devbank.apiture.com/approvals/submittedApprovals?approval=string&approvalUri=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 'https://api.devbank.apiture.com/approvals/submittedApprovals',
  params: {
  'approval' => 'string',
'approvalUri' => '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('https://api.devbank.apiture.com/approvals/submittedApprovals', params={
  'approval': 'string',  'approvalUri': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/submittedApprovals?approval=string&approvalUri=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", "https://api.devbank.apiture.com/approvals/submittedApprovals", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Submit an approval
POST /submittedApprovals
Submit an approval.
 Only product types which are open or returned may be submitted. 
 This operation is invoked from the apiture:submit link on a product type when it is eligible to be submitted. 
 This changes the state to submitted.
Parameters
| Parameter | Description | 
|---|---|
| approval(query) | string(required)A server-generated key which identifies an existing approval resource. | 
| approvalUri(query) | string(required)The URI of an existing approval which is eligible to be submitted. Note: This parameter is deprecated and will be removed in the next version. Use ?approval=instead. | 
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
Example responses
200 Response
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approval | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request. The approvalorapprovalUriwas malformed or does not refer to an approval. | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 409 | Conflict | 
| Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following: 
 | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
returnApproval
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/approvals/returnedApprovals?approval=string&approvalUri=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/approvals/returnedApprovals?approval=string&approvalUri=string HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/returnedApprovals',
  method: 'post',
  data: '?approval=string&approvalUri=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('https://api.devbank.apiture.com/approvals/returnedApprovals?approval=string&approvalUri=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 'https://api.devbank.apiture.com/approvals/returnedApprovals',
  params: {
  'approval' => 'string',
'approvalUri' => '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('https://api.devbank.apiture.com/approvals/returnedApprovals', params={
  'approval': 'string',  'approvalUri': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/returnedApprovals?approval=string&approvalUri=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", "https://api.devbank.apiture.com/approvals/returnedApprovals", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Return an approval
POST /returnedApprovals
Return an approval.
 Only product types which are submitted may be returned. 
 This operation is invoked from the apiture:return link on a product type when it is eligible to be returned. 
 This changes the state to returned.
Parameters
| Parameter | Description | 
|---|---|
| approval(query) | string(required)A server-generated key which identifies an existing approval resource. | 
| approvalUri(query) | string(required)The URI of an existing approval which is eligible to be returned. Note: This parameter is deprecated and will be removed in the next version. Use ?approval=instead. | 
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
Example responses
200 Response
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approval | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request. The approvalorapprovalUriwas malformed or does not refer to an approval. | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 409 | Conflict | 
| Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following: 
 | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
cancelApproval
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/approvals/canceledApprovals?approval=string&approvalUri=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/approvals/canceledApprovals?approval=string&approvalUri=string HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/canceledApprovals',
  method: 'post',
  data: '?approval=string&approvalUri=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('https://api.devbank.apiture.com/approvals/canceledApprovals?approval=string&approvalUri=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 'https://api.devbank.apiture.com/approvals/canceledApprovals',
  params: {
  'approval' => 'string',
'approvalUri' => '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('https://api.devbank.apiture.com/approvals/canceledApprovals', params={
  'approval': 'string',  'approvalUri': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/canceledApprovals?approval=string&approvalUri=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", "https://api.devbank.apiture.com/approvals/canceledApprovals", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Cancel an approval
POST /canceledApprovals
Cancel an approval.
 Only product types which are open, submitted or returned may be canceled. 
 This operation is invoked from the apiture:cancel link on a product type when it is eligible to be canceled. 
 This changes the state to canceled.
Parameters
| Parameter | Description | 
|---|---|
| approval(query) | string(required)A server-generated key which identifies an existing approval resource. | 
| approvalUri(query) | string(required)The URI of an existing approval which is eligible to be canceled. Note: This parameter is deprecated and will be removed in the next version. Use ?approval=instead. | 
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
Example responses
200 Response
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approval | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request. The approvalorapprovalUriwas malformed or does not refer to an approval. | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 409 | Conflict | 
| Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following: 
 | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
Approval Type
getApprovalTypes
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/approvals/approvalTypes \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/approvals/approvalTypes HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
var headers = {
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'
};
$.ajax({
  url: 'https://api.devbank.apiture.com/approvals/approvalTypes',
  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('https://api.devbank.apiture.com/approvals/approvalTypes',
{
  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 'https://api.devbank.apiture.com/approvals/approvalTypes',
  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('https://api.devbank.apiture.com/approvals/approvalTypes', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvalTypes");
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", "https://api.devbank.apiture.com/approvals/approvalTypes", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Return a collection of approval types
GET /approvalTypes
Return a paginated sortable filterable searchable collection of approvals. The links in the response include pagination links.
Parameters
| Parameter | Description | 
|---|---|
| start(query) | integer(int64)The zero-based index of the first approval type item to include in this page. The default 0 denotes the beginning of the collection. | 
| limit(query) | integer(int32)The maximum number of approval type representations to return in this page. | 
| sortBy(query) | stringOptional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2. | 
| filter(query) | stringOptional filter criteria. See filtering. | 
| q(query) | stringOptional search string. See searching. | 
| label(query) | stringSubset the accounts or external accounts collection to those with this label value. Use | 
| name(query) | stringSubset the accounts or external accounts collection to those with this name value. Use | 
Example responses
200 Response
{
  "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "approvalTypes",
  "_links": {
    "self": {
      "href": "/approvals/approvalTypes?start=10&limit=10"
    },
    "first": {
      "href": "/approvals/approvalTypes?start=0&limit=10"
    },
    "next": {
      "href": "/approvals/approvalTypes?start=20&limit=10"
    },
    "collection": {
      "href": "/approvals/approvalTypes"
    }
  },
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        },
        "name": "governmentId",
        "label": "Government Issued ID",
        "description": "A document that identifies a user"
      }
    ]
  }
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approvalTypes | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request.  The request body or one or more of the query parameters was not well formed.  The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
createApprovalType
Code samples
# You can also use wget
curl -X POST https://api.devbank.apiture.com/approvals/approvalTypes \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
POST https://api.devbank.apiture.com/approvals/approvalTypes HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvalTypes',
  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/approvals/approvalTypes/v1.0.0/profile.json"
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/approvals/approvalTypes',
{
  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 'https://api.devbank.apiture.com/approvals/approvalTypes',
  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('https://api.devbank.apiture.com/approvals/approvalTypes', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvalTypes");
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", "https://api.devbank.apiture.com/approvals/approvalTypes", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Create a new approval type
POST /approvalTypes
Create a new approval type in the approval types collection.
Body parameter
{
  "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json"
}
Parameters
| Parameter | Description | 
|---|---|
| body(body) | createApprovalType(required)The data necessary to create a new approval type. | 
Example responses
201 Response
{
  "_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": "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://developer.apiture.com/errors/positiveNumberRequired"
      }
    },
    "_embedded": {
      "errors": []
    }
  },
  "name": "string",
  "label": "string",
  "description": "string",
  "domain": "string",
  "disallowedStates": [
    "submitted"
  ],
  "_id": "string",
  "attributes": {},
  "createdAt": "2019-11-25T16:08:25Z",
  "updatedAt": "2019-11-25T16:08:25Z"
}
Responses
| Status | Description | 
|---|---|
| 201 | Created | 
| Created | |
| Schema: approvalType | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request.  The request body or one or more of the query parameters was not well formed.  The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 409 | Conflict | 
| Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following: 
 | |
| Schema: errorResponse | 
Response Headers
| Status | Description | 
|---|---|
| 201 | Locationstringuri | 
| 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 | ETagstring | 
| The ETagresponse header specifies an entity tag which must be provided in anIf-Matchrequest header forPUTorPATCHoperations which update the resource. | 
getApprovalType
Code samples
# You can also use wget
curl -X GET https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId} \
  -H 'Accept: application/hal+json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
GET https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId} HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
  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('https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
{
  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 'https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
  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('https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}");
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", "https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Fetch a representation of this approval type
GET /approvalTypes/{approvalTypeId}
Return a HAL representation of this approval type resource.
Parameters
| Parameter | Description | 
|---|---|
| approvalTypeId(path) | string(required)The unique identifier of this approval type. This is an opaque string. | 
| If-None-Match(header) | stringThe entity tag that was returned in the ETagresponse. If the resource's current entity tag matches, theGETwill return 304 (Not Modified) and no response body, else the resource representation will be returned. | 
Example responses
200 Response
{
  "_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": "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://developer.apiture.com/errors/positiveNumberRequired"
      }
    },
    "_embedded": {
      "errors": []
    }
  },
  "name": "string",
  "label": "string",
  "description": "string",
  "domain": "string",
  "disallowedStates": [
    "submitted"
  ],
  "_id": "string",
  "attributes": {},
  "createdAt": "2019-11-25T16:08:25Z",
  "updatedAt": "2019-11-25T16:08:25Z"
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approvalType | 
| Status | Description | 
|---|---|
| 304 | Not Modified | 
| Not Modified. The resource has not been modified since it was last fetched. | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 404 | Not Found | 
| Not Found. There is no such approval type resource at the specified {approvalTypeId}. The_errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 412 | Precondition Failed | 
| Precondition Failed. The supplied if-Matchheader value does not match the most recentETagresponse header value. The resource has changed in the interim. | |
| Schema: errorResponse | 
Response Headers
| Status | Description | 
|---|---|
| 200 | ETagstring | 
| The ETagresponse header specifies an entity tag which must be provided in anIf-Matchrequest header forPUTorPATCHoperations which update this approval type resource. | 
updateApprovalType
Code samples
# You can also use wget
curl -X PUT https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId} \
  -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 https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId} HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
  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/approvals/approvalTypes/v1.0.0/profile.json"
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
{
  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 'https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
  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('https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}");
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", "https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Update this approval type
PUT /approvalTypes/{approvalTypeId}
Perform a complete replacement of this approval type.
Body parameter
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json"
}
Parameters
| Parameter | Description | 
|---|---|
| approvalTypeId(path) | string(required)The unique identifier of this approval type. This is an opaque string. | 
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
| body(body) | updateApprovalType(required) | 
Example responses
200 Response
{
  "_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": "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://developer.apiture.com/errors/positiveNumberRequired"
      }
    },
    "_embedded": {
      "errors": []
    }
  },
  "name": "string",
  "label": "string",
  "description": "string",
  "domain": "string",
  "disallowedStates": [
    "submitted"
  ],
  "_id": "string",
  "attributes": {},
  "createdAt": "2019-11-25T16:08:25Z",
  "updatedAt": "2019-11-25T16:08:25Z"
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approvalType | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request.  The request body or one or more of the query parameters was not well formed.  The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 404 | Not Found | 
| Not Found. There is no such approval type resource at the specified {approvalTypeId}. The_errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 412 | Precondition Failed | 
| Precondition Failed. The supplied if-Matchheader value does not match the most recentETagresponse header value. The resource has changed in the interim. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
Response Headers
| Status | Description | 
|---|---|
| 200 | ETagstring | 
| The ETagresponse header specifies an entity tag which must be provided in anIf-Matchrequest header forPUTorPATCHoperations which update this approval type resource. | 
patchApprovalType
Code samples
# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId} \
  -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 https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId} HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
  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/approvals/approvalTypes/v1.0.0/profile.json"
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'
};
fetch('https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
{
  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 'https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
  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('https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}");
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", "https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Update this approval type
PATCH /approvalTypes/{approvalTypeId}
Perform a partial update of this approval type. 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/approvals/approvalTypes/v1.0.0/profile.json"
}
Parameters
| Parameter | Description | 
|---|---|
| approvalTypeId(path) | string(required)The unique identifier of this approval type. This is an opaque string. | 
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
| body(body) | patchApprovalType(required) | 
Example responses
200 Response
{
  "_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": "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://developer.apiture.com/errors/positiveNumberRequired"
      }
    },
    "_embedded": {
      "errors": []
    }
  },
  "name": "string",
  "label": "string",
  "description": "string",
  "domain": "string",
  "disallowedStates": [
    "submitted"
  ],
  "_id": "string",
  "attributes": {},
  "createdAt": "2019-11-25T16:08:25Z",
  "updatedAt": "2019-11-25T16:08:25Z"
}
Responses
| Status | Description | 
|---|---|
| 200 | OK | 
| OK | |
| Schema: approvalType | 
| Status | Description | 
|---|---|
| 400 | Bad Request | 
| Bad Request.  The request body or one or more of the query parameters was not well formed.  The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 404 | Not Found | 
| Not Found. There is no such approval type resource at the specified {approvalTypeId}. The_errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 412 | Precondition Failed | 
| Precondition Failed. The supplied if-Matchheader value does not match the most recentETagresponse header value. The resource has changed in the interim. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 422 | Unprocessable Entity | 
| Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _errorfield in the response will contain details about the request error. | |
| Schema: errorResponse | 
Response Headers
| Status | Description | 
|---|---|
| 200 | ETagstring | 
| The ETagresponse header specifies an entity tag which must be provided in anIf-Matchrequest header forPUTorPATCHoperations which update this approval type resource. | 
deleteApprovalType
Code samples
# You can also use wget
curl -X DELETE https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId} \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'
DELETE https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId} HTTP/1.1
Host: api.devbank.apiture.com
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: 'https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
  method: 'delete',
  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('https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
{
  method: 'DELETE',
  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.delete 'https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}',
  params: {
  }, 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.delete('https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
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("DELETE", "https://api.devbank.apiture.com/approvals/approvalTypes/{approvalTypeId}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
Delete this approval type resource
DELETE /approvalTypes/{approvalTypeId}
Delete this approval type resource and any resources that are owned by it. Deleting an Approval Type is only allowed if it is not in use by any existing Approvals.
Parameters
| Parameter | Description | 
|---|---|
| If-Match(header) | stringThe entity tag that was returned in the ETagresponse. This must match the current entity tag of the resource. | 
| approvalTypeId(path) | string(required)The unique identifier of this approval type. This is an opaque string. | 
Example responses
401 Response
{
  "_profile": "https://api.apiture.com/schemas/common/errorResponse/v1.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": []
    }
  }
}
Responses
| Status | Description | 
|---|---|
| 204 | No Content | 
| No Content. The resource was deleted successfully. | 
| Status | Description | 
|---|---|
| 401 | Unauthorized | 
| Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 409 | Conflict | 
| Conflict. There is a conflict between the request and the current state of the resource. It may be one of the following: 
 | |
| Schema: errorResponse | 
| Status | Description | 
|---|---|
| 412 | Precondition Failed | 
| Precondition Failed. The supplied if-Matchheader value does not match the most recentETagresponse header value. The resource has changed in the interim. | |
| Schema: errorResponse | 
Schemas
approvalFields
{
  "state": "active",
  "done": true,
  "label": "Government Issued ID",
  "typeName": "governmentId",
  "description": "A document that identifies a user",
  "reviewedBy": "/users/users/0399abed-fd3d-4830-a88b-30f38b8a365c",
  "reviewedAt": "2018-04-17T10:12:58.375Z"
}
Approval Fields (Version v1.0.0)
Common fields of the approval resource used to build other model schemas.
Properties
| Name | Description | 
|---|---|
| label | stringThe approval's common name. If omitted on create request, this will default to the label of the Approval Type. | 
| description | stringThe approval's description. If omitted on create request, this will default to the description of the Approval Type. | 
| state | stringThe approval's state. 
 This is an immutable and derived property. It's value can only be changed by using the corresponding  
 | 
| done | booleanInferred done flag. If doneis true, the approval is in a terminal state and may no longer be acted upon.  Done states includecanceled,approved,waivedorrejected. | 
| typeName | stringThe name of the Approval Type. This field is immutable and derived from the name of the Approval Type. | 
| reviewedBy | stringThe id of the User that reviewed the approval. | 
| reviewedAt | string(date-time)The date-time when the approval was reviewed. | 
createApproval
{
  "_profile": "https://api.apiture.com/schemas/approvals/approval/v1.0.0/profile.json"
}
Create Approval (Version v1.0.0)
Representation used to create a new approval.  A link to an apiture:approvalType is required to perform this operation.  An optional apiture:target link may also be specified to represent the target resource for the approval. The target can be any resource, for example, an account application or a document.
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectAn 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 | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| label | stringThe approval's common name. If omitted on create request, this will default to the label of the Approval Type. | 
| description | stringThe approval's description. If omitted on create request, this will default to the description of the Approval Type. | 
| state | stringThe approval's state. 
 This is an immutable and derived property. It's value can only be changed by using the corresponding  
 | 
| done | booleanInferred done flag. If doneis true, the approval is in a terminal state and may no longer be acted upon.  Done states includecanceled,approved,waivedorrejected. | 
| typeName | stringThe name of the Approval Type. This field is immutable and derived from the name of the Approval Type. | 
| reviewedBy | stringThe id of the User that reviewed the approval. | 
| reviewedAt | string(date-time)The date-time when the approval was reviewed. | 
| attributes | objectAn optional map of name/value pairs which provide additional metadata about the approval. | 
summaryApproval
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}
Approval Summary (Version v1.0.0)
Summary representation of an approval resource in approvals 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
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectAn 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 | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| label | stringThe approval's common name. If omitted on create request, this will default to the label of the Approval Type. | 
| description | stringThe approval's description. If omitted on create request, this will default to the description of the Approval Type. | 
| state | stringThe approval's state. 
 This is an immutable and derived property. It's value can only be changed by using the corresponding  
 | 
| done | booleanInferred done flag. If doneis true, the approval is in a terminal state and may no longer be acted upon.  Done states includecanceled,approved,waivedorrejected. | 
| typeName | stringThe name of the Approval Type. This field is immutable and derived from the name of the Approval Type. | 
| reviewedBy | stringThe id of the User that reviewed the approval. | 
| reviewedAt | string(date-time)The date-time when the approval was reviewed. | 
| _id | stringThe unique identifier for this approval resource. This is an immutable opaque string. | 
updateApproval
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json"
}
Update Approval (Version v1.0.0)
Representation used to update or patch an approval.  The state field is immutable and not updated by this operation, but by the state transition POST operations such as approve or reject (ex. apiture:approve and apiture:reject).
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectAn 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 | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| label | stringThe approval's common name. If omitted on create request, this will default to the label of the Approval Type. | 
| description | stringThe approval's description. If omitted on create request, this will default to the description of the Approval Type. | 
| state | stringThe approval's state. 
 This is an immutable and derived property. It's value can only be changed by using the corresponding  
 | 
| done | booleanInferred done flag. If doneis true, the approval is in a terminal state and may no longer be acted upon.  Done states includecanceled,approved,waivedorrejected. | 
| typeName | stringThe name of the Approval Type. This field is immutable and derived from the name of the Approval Type. | 
| reviewedBy | stringThe id of the User that reviewed the approval. | 
| reviewedAt | string(date-time)The date-time when the approval was reviewed. | 
| _id | stringThe unique identifier for this approval resource. This is an immutable opaque string. | 
| attributes | objectAn optional map of name/value pairs which provide additional metadata about the approval. | 
approval
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "createdAt": "2018-04-17T10:04:46.375Z",
  "updatedAt": "2018-04-17T10:12:58.375Z",
  "_links": {
    "self": {
      "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
    },
    "apiture:approvalType": {
      "href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:target": {
      "href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
    }
  },
  "_embedded": {
    "approvalType": {
      "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
      "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
      "_links": {
        "self": {
          "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
        }
      },
      "name": "governmentId",
      "label": "Government Issued ID",
      "description": "A document that identifies a user"
    }
  }
}
Approval (Version v1.0.0)
An approval represents the review of some process, activity or resource, such as a document or an application. The state of the approval is recorded in its state property. The target of the approval is in the link named apiture:target; see the Create Approval schema and createApproval operation. Links on an approval convey which state transitions are available. These links are:
- apiture:approve-- mark the review request as approved
- apiture:reject-- to reject the approval request
- apiture:waive-- to waive the approval requirements. For example, rather than requiring a specific identity verification document to be approved, waiving the requirement means the document does not have to be provided.
- apiture:return-- to return the request so the client can update the request or resource, then resubmit the request for approval
- apiture:submit-- to submit a new request for approval, or resubmit a request after it has been returned
- apiture:cancel-- to cancel the request for review/approval
The client should use POST to invoke these operations, using the href on the named link object. No request body is used on these operations.
The absence of a link indicates that the particular state transition is not available at that time or that the caller is not authorized to make the change. For example, a user may lack permissions to approve a wire transfer they submitted.
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectThe objects which participate in this approval. | 
| » approvalType | summaryApprovalTypeThe type of this approval. | 
| _profile | string(uri)The URI of a resource profile which describes the representation. | 
| _error | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| label | stringThe approval's common name. If omitted on create request, this will default to the label of the Approval Type. | 
| description | stringThe approval's description. If omitted on create request, this will default to the description of the Approval Type. | 
| state | stringThe approval's state. 
 This is an immutable and derived property. It's value can only be changed by using the corresponding  
 | 
| done | booleanInferred done flag. If doneis true, the approval is in a terminal state and may no longer be acted upon.  Done states includecanceled,approved,waivedorrejected. | 
| typeName | stringThe name of the Approval Type. This field is immutable and derived from the name of the Approval Type. | 
| reviewedBy | stringThe id of the User that reviewed the approval. | 
| reviewedAt | string(date-time)The date-time when the approval was reviewed. | 
| _id | stringThe unique identifier for this approval resource. This is an immutable opaque string. | 
| attributes | objectAn optional map of name/value pairs which provide additional metadata about the approval. | 
| createdAt | string(date-time)The date-time when the approval was created. | 
| updatedAt | string(date-time)The date-time when the approval was updated. | 
approvals
{
  "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "approvals",
  "_links": {
    "self": {
      "href": "/approvals/approvals?start=10&limit=10"
    },
    "first": {
      "href": "/approvals/approvals?start=0&limit=10"
    },
    "next": {
      "href": "/approvals/approvals?start=20&limit=10"
    },
    "collection": {
      "href": "/approvals/approvals"
    }
  },
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        },
        "state": "active",
        "done": true,
        "label": "Government Issued ID",
        "description": "A document that identifies a user",
        "reviewedBy": "/users/users/0399abed-fd3d-4830-a88b-30f38b8a365c",
        "reviewedAt": "2018-04-17T10:12:58.375Z"
      }
    ]
  }
}
Approval Collection (Version v1.0.0)
Collection of approvals. The items in the collection are ordered in the _embedded.items array; the name is approvals.  The top-level _links object may contain pagination links (self, next, prev, first, last, collection).
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectEmbedded objects. | 
| » items | [summaryApproval]An array containing a page of approval items. | 
| _profile | string(uri)The URI of a resource profile which describes the representation. | 
| _error | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| count | integerThe number of items in the collection. This value is optional and my 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 | integerThe start index of this page of items. | 
| limit | integerThe maximum number of items per page. | 
| name | stringThe name of the collection. | 
approvalTypeFields
{
  "name": "governmentId",
  "label": "Government Issued ID",
  "description": "A document that identifies a user. `governmentId` approvals may not be waived or canceled.",
  "disallowedStates": [
    "waived",
    "canceled"
  ],
  "domain": "http://api.apiture.com/domains/approvals/documentRequirement"
}
Approval Type Fields (Version v1.0.0)
Common fields of the approval resource used to build other model schemas.
Properties
| Name | Description | 
|---|---|
| name | stringThe approval's name. | 
| label | stringThe approval's common name. | 
| description | stringThe approval's description. | 
| domain | stringA namespace for grouping related resources, to keep them separate from other resources. For example, a department or bank branch may define a domain, and all Approval Type instances they define will use that domain, so that they can avoid conflicting with Approval Type names in other domains. An API or service may define a domain for new Approval Types that it defines. The combination of domainandnamemust be unique within the set of all approval types. It is a best practice to definedomainwith a URI or a URN. | 
| disallowedStates | [string]An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The state openis always allowed, so the enumeration set fordisallowedstates is a subset of thestateenumeration on an approval. | 
approvalTypes
{
  "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "approvalTypes",
  "_links": {
    "self": {
      "href": "/approvals/approvalTypes?start=10&limit=10"
    },
    "first": {
      "href": "/approvals/approvalTypes?start=0&limit=10"
    },
    "next": {
      "href": "/approvals/approvalTypes?start=20&limit=10"
    },
    "collection": {
      "href": "/approvals/approvalTypes"
    }
  },
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        },
        "name": "governmentId",
        "label": "Government Issued ID",
        "description": "A document that identifies a user"
      }
    ]
  }
}
Approval Types Collection (Version v1.0.0)
Collection of approval types. The items in the collection are ordered in the _embedded.items array; the name is approvals.  The top-level _links object may contain pagination links (self, next, prev, first, last, collection).
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectEmbedded objects. | 
| » items | [summaryApprovalType]An array containing a page of approval type items. | 
| _profile | string(uri)The URI of a resource profile which describes the representation. | 
| _error | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| count | integerThe number of items in the collection. This value is optional and my 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 | integerThe start index of this page of items. | 
| limit | integerThe maximum number of items per page. | 
| name | stringThe name of the collection. | 
createApprovalType
{
  "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json"
}
Create Approval Type (Version v1.0.0)
Representation used to create a new approval type.
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectAn 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 | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| name | string(required)The approval's name. | 
| label | stringThe approval's common name. | 
| description | stringThe approval's description. | 
| domain | stringA namespace for grouping related resources, to keep them separate from other resources. For example, a department or bank branch may define a domain, and all Approval Type instances they define will use that domain, so that they can avoid conflicting with Approval Type names in other domains. An API or service may define a domain for new Approval Types that it defines. The combination of domainandnamemust be unique within the set of all approval types. It is a best practice to definedomainwith a URI or a URN. | 
| disallowedStates | [string]An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The state openis always allowed, so the enumeration set fordisallowedstates is a subset of thestateenumeration on an approval. | 
| attributes | objectAn optional map of name/value pairs which provide additional metadata about the approval type. | 
approvalType
{
  "_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": "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://developer.apiture.com/errors/positiveNumberRequired"
      }
    },
    "_embedded": {
      "errors": []
    }
  },
  "name": "string",
  "label": "string",
  "description": "string",
  "domain": "string",
  "disallowedStates": [
    "submitted"
  ],
  "_id": "string",
  "attributes": {},
  "createdAt": "2019-11-25T16:08:25Z",
  "updatedAt": "2019-11-25T16:08:25Z"
}
Approval Type (Version v1.0.0)
All Approval resources contain an Approval Type, a resource that is also managed in this API. Approval Types provide Financial Institutions the ability to track, reconcile and group specific Approvals. In addition, metadata regarding specific types of Approvals can be stored on the Approval Type. Approval Types may only be deleted if they are not in use by any existing Approvals. Some examples of Approval Types may be specific documents related to New Account Opening that need to be manually approved, Account Applications or Transfer requests.
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectAn 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 | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| name | stringThe approval's name. | 
| label | stringThe approval's common name. | 
| description | stringThe approval's description. | 
| domain | stringA namespace for grouping related resources, to keep them separate from other resources. For example, a department or bank branch may define a domain, and all Approval Type instances they define will use that domain, so that they can avoid conflicting with Approval Type names in other domains. An API or service may define a domain for new Approval Types that it defines. The combination of domainandnamemust be unique within the set of all approval types. It is a best practice to definedomainwith a URI or a URN. | 
| disallowedStates | [string]An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The state openis always allowed, so the enumeration set fordisallowedstates is a subset of thestateenumeration on an approval. | 
| _id | stringThe unique identifier for this approval resource. This is an immutable opaque string. | 
| attributes | objectAn optional map of name/value pairs which provide additional metadata about the approval type. | 
| createdAt | string(date-time)The date-time when the approval was created. | 
| updatedAt | string(date-time)The date-time when the approval was updated | 
updateApprovalType
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json"
}
Update Approval Type (Version v1.0.0)
Representation used to update or patch an approval type.
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectAn 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 | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| name | string(required)The approval's name. | 
| label | stringThe approval's common name. | 
| description | stringThe approval's description. | 
| domain | stringA namespace for grouping related resources, to keep them separate from other resources. For example, a department or bank branch may define a domain, and all Approval Type instances they define will use that domain, so that they can avoid conflicting with Approval Type names in other domains. An API or service may define a domain for new Approval Types that it defines. The combination of domainandnamemust be unique within the set of all approval types. It is a best practice to definedomainwith a URI or a URN. | 
| disallowedStates | [string]An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The state openis always allowed, so the enumeration set fordisallowedstates is a subset of thestateenumeration on an approval. | 
| _id | stringThe unique identifier for this approval resource. This is an immutable opaque string. | 
| attributes | objectAn optional map of name/value pairs which provide additional metadata about the approval type. | 
patchApprovalType
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json"
}
Update Approval Type (Version v1.0.0)
Representation used to update or patch an approval type.
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectAn 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 | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| name | stringThe approval's name. | 
| label | stringThe approval's common name. | 
| description | stringThe approval's description. | 
| domain | stringA namespace for grouping related resources, to keep them separate from other resources. For example, a department or bank branch may define a domain, and all Approval Type instances they define will use that domain, so that they can avoid conflicting with Approval Type names in other domains. An API or service may define a domain for new Approval Types that it defines. The combination of domainandnamemust be unique within the set of all approval types. It is a best practice to definedomainwith a URI or a URN. | 
| disallowedStates | [string]An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The state openis always allowed, so the enumeration set fordisallowedstates is a subset of thestateenumeration on an approval. | 
| _id | stringThe unique identifier for this approval resource. This is an immutable opaque string. | 
| attributes | objectAn optional map of name/value pairs which provide additional metadata about the approval type. | 
summaryApprovalType
{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}
Approval Type Summary (Version v1.0.0)
Summary representation of an approval type resource in approvals 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
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectAn 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 | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| name | stringThe approval's name. | 
| label | stringThe approval's common name. | 
| description | stringThe approval's description. | 
| domain | stringA namespace for grouping related resources, to keep them separate from other resources. For example, a department or bank branch may define a domain, and all Approval Type instances they define will use that domain, so that they can avoid conflicting with Approval Type names in other domains. An API or service may define a domain for new Approval Types that it defines. The combination of domainandnamemust be unique within the set of all approval types. It is a best practice to definedomainwith a URI or a URN. | 
| disallowedStates | [string]An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The state openis always allowed, so the enumeration set fordisallowedstates is a subset of thestateenumeration on an approval. | 
| _id | stringThe unique identifier for this approval resource. This is an immutable opaque string. | 
attributes
{}
Attributes (Version v1.0.0)
An optional map of name/value pairs which contains additional dynamic data about the resource.
Properties
root
{
  "id": "apiName",
  "name": "API name",
  "apiVersion": "1.0.0",
  "_profile": "http://localhost:8080/schemas/common/root/v1.0.0/profile.json",
  "_links": {}
}
API Root (Version v1.0.0)
A HAL response, with hypermedia _links for the top-level resources and operations in API.
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectAn 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 | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
| _id | stringThis API's unique ID. | 
| name | stringThis API's name. | 
| apiVersion | stringThis API's version. | 
errorResponse
{
  "_profile": "https://api.apiture.com/schemas/common/errorResponse/v1.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 (Version v1.0.0)
Describes an error response, typically returned on 4xx or 5xx errors from API operations. The _error object contains the error details.
Properties
| Name | Description | 
|---|---|
| _links | objectAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| » additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. | 
| _embedded | objectAn 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 | errorAn object which describes an error. This value is omitted if the operation succeeded without error. | 
link
{
  "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
  "title": "Applicant"
}
Link (Version 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.
Properties
| Name | Description | 
|---|---|
| href | string(uri)(required)The URI or URI template for the resource/operation this link refers to. | 
| type | stringThe media type for the resource. | 
| templated | booleanIf true, the link's href is a URI template. | 
| title | stringAn 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. | 
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://developer.apiture.com/errors/positiveNumberRequired"
    }
  },
  "_embedded": {
    "errors": []
  }
}
Error (Version v1.0.0)
Describes an error in an API request or in a service called via the API.
Properties
| Name | Description | 
|---|---|
| message | string(required)A localized message string describing the error condition. | 
| _id | stringA 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. | 
| statusCode | integerThe HTTP status code associate with this error. minimum: 100maximum: 599 | 
| type | stringAn 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, thetypemay be much more specific. such asintegerValueNotInAllowedRangeornumericValueExceedsMaximumorstringValueNotInAllowedSet. | 
| occurredAt | string(date-time)An RFC 3339 UTC time stamp indicating when the error occurred. | 
| attributes | attributesInformative values or constraints which describe the error. For example, for a value out of range error, the attributes may specify the minimumandmaximumvalues. 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 errortype. | 
| remediation | stringAn 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 | linksAn optional map of links, mapping each link relation to a link object. This model defines the _linksobject of HAL representations. | 
| _embedded | objectEmbedded objects. An error object may contain nested errors. For example, an API which validates its request body may find multiple errors in the request, which are returned with an error response with nested errors. These are held in an itemsarray oferrorResponseobjects._embeddedor_embedded.itemsmay not exist if the error does not have nested errors. This property is deprecated; use seeerror.errorsinstead. | 
| » items | [errorResponse]An array of error objects. | 
links
{
  "property1": {
    "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
    "title": "Applicant"
  },
  "property2": {
    "href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
    "title": "Applicant"
  }
}
Links (Version 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.
Properties
| Name | Description | 
|---|---|
| additionalProperties | linkDescribes a hypermedia link within a _linksobject in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use thenameorhreflangproperties of HAL. Apiture links may include amethodproperty. |