Approvals v0.11.5
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. Approvals are useful in confirming that part or all of a process is complete. An Approval is a resource which represents something that the financial institution must approve. Examples of approvals may include Identity Verification Document approval or Account Application approval.
Approval States may be one of the following:
open
Created but not yet ready for reviewsubmitted
Pending review by approverapproved
Approval grantedrejected
Approval deniedwaived
Approval forgivenreturned
Approver returns approval for modificationcanceled
Approval 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
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.
Approval type resources
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. 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. There can be many approval resources per approval type. 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.
Approval types may also indicate which approval states are not allowed. For
example, some approval types disallow waived
or returned
. See the
disallowedStates
property.
Approval targets
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. The target
is defined in the _links
in the request body, 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.
Examples of targets may include an account application or a document.
Approval attributes
An approval or approval type may store additional data in the
resource's attributes
property. Attributes can be modified through PATCH
.
Attributes 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 = /auth/oauth2/authorize
- Token URL = /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. |
admin/write |
Admin write (update) access to non-account, non-profile data. |
Approval
Approval
getApprovals
Code samples
# You can also use wget
curl -X GET /approvals/approvals \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET /approvals/approvals HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvals', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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. Default: 100 |
sortBy (query) |
string Optional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2 . |
filter (query) |
string Optional filter criteria. See filtering. |
q (query) |
string Optional search string. See searching. |
state (query) |
array[string] Subset the approvals collection to those whose state matches this value. Use | to separate multiple values. For example, ?state=submitted matches only items whose state is submitted ; ?state=rejected|approved matches items whose state is rejected or approved . The value or | -separated values should be from the approvalState enumeration. This is combined with an implicit and with other filters if they are used. See filtering. minLength: 1 maxLength: 5 uniqueItems: true |
label (query) |
string Subset the approvals collection to those with this label value. Use | to separate multiple values. For example, ?label=email_verification matches only items whose label is email_verification ; ?label=email_verification|account_verification will match items whose label is email_verification or account_verification . This is combined with an implicit and with other filters if they are used. See filtering. |
Try It
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 _error field 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
createApproval
Code samples
# You can also use wget
curl -X POST /approvals/approvals \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST /approvals/approvals HTTP/1.1
Content-Type: application/hal+json
Accept: application/hal+json
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvals', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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 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. |
Try It
Example responses
201 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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 _error field 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 | Location string uri |
The URI of the new resource. If the URI begins with / it is relative to the API root context. Else, it is a full URI starting with scheme ://host | |
201 | ETag string |
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update the resource. |
getApproval
Code samples
# You can also use wget
curl -X GET /approvals/approvals/{approvalId} \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET /approvals/approvals/{approvalId} HTTP/1.1
Accept: application/hal+json
If-None-Match: string
var headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvals/{approvalId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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) |
string The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET will return 304 (Not Modified) and no response body, else the resource representation will be returned. |
embed (query) |
array[string] The embed query parameter specifies which related resources to include in the _embedded object in the response. embed supports the following comma-separated values:
approvalType and target for approvals use GET .../approval/{approvalId}?embed=approvalType,target . To embed the target only, use GET .../approval/{approvalId}?embed=target . Default: "approvalType" |
Try It
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this approval resource. |
updateApproval
Code samples
# You can also use wget
curl -X PUT /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 /approvals/approvals/{approvalId} HTTP/1.1
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvals/{approvalId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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. Nested _embedded
and _links
are ignored if included. The state
is not updated by this operation; use the state-change operations described in the approval
schema.
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) |
string The entity tag that was returned in the ETag response. If supplied, this must match the current entity tag of the resource. |
body (body) |
updateApproval (required) |
Try It
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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 _error field 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Status | Description |
---|---|
412 | Precondition Failed |
Precondition Failed. The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim. | |
Schema: errorResponse |
Status | Description |
---|---|
422 | Unprocessable Entity |
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this approval resource. |
patchApproval
Code samples
# You can also use wget
curl -X PATCH /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 /approvals/approvals/{approvalId} HTTP/1.1
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvals/{approvalId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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. Omitted fields are not updated. Nested _embedded
and _links
are ignored if included. The state
is not updated by this operation; use the state-change operations described in the approval
schema.
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) |
string The entity tag that was returned in the ETag response. If supplied, this must match the current entity tag of the resource. |
body (body) |
updateApproval (required) |
Try It
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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 _error field 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Status | Description |
---|---|
412 | Precondition Failed |
Precondition Failed. The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim. | |
Schema: errorResponse |
Status | Description |
---|---|
422 | Unprocessable Entity |
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this approval resource. |
deleteApproval
Code samples
# You can also use wget
curl -X DELETE /approvals/approvals/{approvalId} \
-H 'Accept: application/hal+json' \
-H 'If-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
DELETE /approvals/approvals/{approvalId} HTTP/1.1
Accept: application/hal+json
If-Match: string
var headers = {
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvals/{approvalId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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) |
string The entity tag that was returned in the ETag response. If supplied, 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. |
Try It
Example responses
401 Response
{
"_profile": "https://api.apiture.com/schemas/common/errorResponse/v2.0.0/profile.json",
"_error": {
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"message": "The value for deposit must be greater than 0.",
"statusCode": 422,
"type": "positiveNumberRequired",
"attributes": {
"value": -125.5
},
"remediation": "Provide a value which is greater than 0",
"occurredAt": "2018-01-25T05:50:52.375Z",
"_links": {
"describedby": {
"href": "https://api.apiture.com/errors/positiveNumberRequired"
}
},
"_embedded": {
"errors": []
}
}
}
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-Match header value does not match the most recent ETag response header value. The resource has changed in the interim. | |
Schema: errorResponse |
Approval Actions
Actions on Approval Resources
approveApproval
Code samples
# You can also use wget
curl -X POST /approvals/approvedApprovals?approval=string \
-H 'Accept: application/hal+json' \
-H 'If-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST /approvals/approvedApprovals?approval=string HTTP/1.1
Accept: application/hal+json
If-Match: string
var headers = {
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvedApprovals', params={
'approval': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/approvals/approvedApprovals", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Approve an approval
POST /approvedApprovals
Approve an approval.
Only approvals 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) |
string The 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) |
string The entity tag that was returned in the ETag response. If supplied, this must match the current entity tag of the resource. |
Try It
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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 or approvalUri parameter 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
rejectApproval
Code samples
# You can also use wget
curl -X POST /approvals/rejectedApprovals?approval=string \
-H 'Accept: application/hal+json' \
-H 'If-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST /approvals/rejectedApprovals?approval=string HTTP/1.1
Accept: application/hal+json
If-Match: string
var headers = {
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/rejectedApprovals', params={
'approval': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/approvals/rejectedApprovals", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Reject an approval
POST /rejectedApprovals
Reject an approval. Only approvals which are submitted
may be rejected
. This operation is invoked from the apiture:reject
link on an approval 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) |
string The 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) |
string The entity tag that was returned in the ETag response. If supplied, this must match the current entity tag of the resource. |
Try It
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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 or approvalUri 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
waiveApproval
Code samples
# You can also use wget
curl -X POST /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 /approvals/waivedApprovals?approval=string&approvalUri=string HTTP/1.1
Accept: application/hal+json
If-Match: string
var headers = {
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/waivedApprovals', params={
'approval': 'string', 'approvalUri': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/approvals/waivedApprovals", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Waive an approval
POST /waivedApprovals
Waive an approval. Only approvals which are open
or submitted
may be waived
. This operation is invoked from the apiture:waive
link on an approval 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) |
string The entity tag that was returned in the ETag response. If supplied, this must match the current entity tag of the resource. |
Try It
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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 'approvalor approvalUri` 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
submitApproval
Code samples
# You can also use wget
curl -X POST /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 /approvals/submittedApprovals?approval=string&approvalUri=string HTTP/1.1
Accept: application/hal+json
If-Match: string
var headers = {
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/submittedApprovals', params={
'approval': 'string', 'approvalUri': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/approvals/submittedApprovals", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Submit an approval
POST /submittedApprovals
Submit an approval. Only approvals which are open
or returned
may be submitted
. This operation is invoked from the apiture:submit
link on an approval 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) |
string The entity tag that was returned in the ETag response. If supplied, this must match the current entity tag of the resource. |
Try It
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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 or approvalUri 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
returnApproval
Code samples
# You can also use wget
curl -X POST /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 /approvals/returnedApprovals?approval=string&approvalUri=string HTTP/1.1
Accept: application/hal+json
If-Match: string
var headers = {
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/returnedApprovals', params={
'approval': 'string', 'approvalUri': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/approvals/returnedApprovals", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Return an approval
POST /returnedApprovals
Return an approval. Only approvals which are submitted
may be returned
. This operation is invoked from the apiture:return
link on an approval 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) |
string The entity tag that was returned in the ETag response. If supplied, this must match the current entity tag of the resource. |
Try It
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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 or approvalUri 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
cancelApproval
Code samples
# You can also use wget
curl -X POST /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 /approvals/canceledApprovals?approval=string&approvalUri=string HTTP/1.1
Accept: application/hal+json
If-Match: string
var headers = {
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/canceledApprovals', params={
'approval': 'string', 'approvalUri': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/approvals/canceledApprovals", data)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
// ...
}
Cancel an approval
POST /canceledApprovals
Cancel an approval. Only approvals which are open
, submitted
or returned
may be canceled
. This operation is invoked from the apiture:cancel
link on an approval 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) |
string The entity tag that was returned in the ETag response. If supplied, this must match the current entity tag of the resource. |
Try It
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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 or approvalUri 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Approval Type
The type of an Approval
getApprovalTypes
Code samples
# You can also use wget
curl -X GET /approvals/approvalTypes \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET /approvals/approvalTypes HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvalTypes', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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. Default: 100 |
sortBy (query) |
string Optional sort criteria. See sort criteria format, such as ?sortBy=field1,-field2 . |
filter (query) |
string Optional filter criteria. See filtering. |
q (query) |
string Optional search string. See searching. |
label (query) |
string Subset the approvals collection to those with this label value. Use | to separate multiple values. For example, ?label=email_verification matches only items whose label is email_verification ; ?label=email_verification|account_verification will match items whose label is email_verification or account_verification . This is combined with an implicit and with other filters if they are used. See filtering. |
name (query) |
string Subset the approvals collection to those with this name value. Use | to separate multiple values. For example, ?name=Bartell will match only items whose name is Bartell; ?name=Bartell|kirsten will match items whose name is Bartell or kirsten. This is combined with an implicit and with other filters if they are used. See filtering. |
Try It
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 _error field 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
createApprovalType
Code samples
# You can also use wget
curl -X POST /approvals/approvalTypes \
-H 'Content-Type: application/hal+json' \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
POST /approvals/approvalTypes HTTP/1.1
Content-Type: application/hal+json
Accept: application/hal+json
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvalTypes', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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. |
Try It
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": "2eae46e1575c0a7b0115a4b3",
"message": "Descriptive error message...",
"statusCode": 422,
"type": "errorType1",
"remediation": "Remediation string...",
"occurredAt": "2018-01-25T05:50:52.375Z",
"errors": [
{
"_id": "ccdbe2c5c938a230667b3827",
"message": "An optional embedded error"
},
{
"_id": "dbe9088dcfe2460f229338a3",
"message": "Another optional embedded error"
}
],
"_links": {
"describedby": {
"href": "https://developer.apiture.com/errors/errorType1"
}
}
},
"name": "string",
"label": "string",
"description": "string",
"domain": "string",
"disallowedStates": [
"rejected"
],
"_id": "string",
"attributes": {},
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
}
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 _error field 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 | Location string uri |
The URI of the new resource. If the URI begins with / it is relative to the API root context. Else, it is a full URI starting with scheme ://host | |
201 | ETag string |
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update the resource. |
getApprovalType
Code samples
# You can also use wget
curl -X GET /approvals/approvalTypes/{approvalTypeId} \
-H 'Accept: application/hal+json' \
-H 'If-None-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
GET /approvals/approvalTypes/{approvalTypeId} HTTP/1.1
Accept: application/hal+json
If-None-Match: string
var headers = {
'Accept':'application/hal+json',
'If-None-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvalTypes/{approvalTypeId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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) |
string The entity tag that was returned in the ETag response. If the resource's current entity tag matches, the GET will return 304 (Not Modified) and no response body, else the resource representation will be returned. |
Try It
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": "2eae46e1575c0a7b0115a4b3",
"message": "Descriptive error message...",
"statusCode": 422,
"type": "errorType1",
"remediation": "Remediation string...",
"occurredAt": "2018-01-25T05:50:52.375Z",
"errors": [
{
"_id": "ccdbe2c5c938a230667b3827",
"message": "An optional embedded error"
},
{
"_id": "dbe9088dcfe2460f229338a3",
"message": "Another optional embedded error"
}
],
"_links": {
"describedby": {
"href": "https://developer.apiture.com/errors/errorType1"
}
}
},
"name": "string",
"label": "string",
"description": "string",
"domain": "string",
"disallowedStates": [
"rejected"
],
"_id": "string",
"attributes": {},
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
}
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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Status | Description |
---|---|
412 | Precondition Failed |
Precondition Failed. The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this approval type resource. |
updateApprovalType
Code samples
# You can also use wget
curl -X PUT /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 /approvals/approvalTypes/{approvalTypeId} HTTP/1.1
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvalTypes/{approvalTypeId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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) |
string The entity tag that was returned in the ETag response. If supplied, this must match the current entity tag of the resource. |
body (body) |
updateApprovalType (required) |
Try It
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": "2eae46e1575c0a7b0115a4b3",
"message": "Descriptive error message...",
"statusCode": 422,
"type": "errorType1",
"remediation": "Remediation string...",
"occurredAt": "2018-01-25T05:50:52.375Z",
"errors": [
{
"_id": "ccdbe2c5c938a230667b3827",
"message": "An optional embedded error"
},
{
"_id": "dbe9088dcfe2460f229338a3",
"message": "Another optional embedded error"
}
],
"_links": {
"describedby": {
"href": "https://developer.apiture.com/errors/errorType1"
}
}
},
"name": "string",
"label": "string",
"description": "string",
"domain": "string",
"disallowedStates": [
"rejected"
],
"_id": "string",
"attributes": {},
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
}
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 _error field 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Status | Description |
---|---|
412 | Precondition Failed |
Precondition Failed. The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim. | |
Schema: errorResponse |
Status | Description |
---|---|
422 | Unprocessable Entity |
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this approval type resource. |
patchApprovalType
Code samples
# You can also use wget
curl -X PATCH /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 /approvals/approvalTypes/{approvalTypeId} HTTP/1.1
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string
var headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvalTypes/{approvalTypeId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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) |
string The entity tag that was returned in the ETag response. If supplied, this must match the current entity tag of the resource. |
body (body) |
patchApprovalType (required) |
Try It
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": "2eae46e1575c0a7b0115a4b3",
"message": "Descriptive error message...",
"statusCode": 422,
"type": "errorType1",
"remediation": "Remediation string...",
"occurredAt": "2018-01-25T05:50:52.375Z",
"errors": [
{
"_id": "ccdbe2c5c938a230667b3827",
"message": "An optional embedded error"
},
{
"_id": "dbe9088dcfe2460f229338a3",
"message": "Another optional embedded error"
}
],
"_links": {
"describedby": {
"href": "https://developer.apiture.com/errors/errorType1"
}
}
},
"name": "string",
"label": "string",
"description": "string",
"domain": "string",
"disallowedStates": [
"rejected"
],
"_id": "string",
"attributes": {},
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
}
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 _error field 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 _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Status | Description |
---|---|
412 | Precondition Failed |
Precondition Failed. The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim. | |
Schema: errorResponse |
Status | Description |
---|---|
422 | Unprocessable Entity |
Unprocessable Entity. One or more of the query parameters was well formed but otherwise invalid. The _error field in the response will contain details about the request error. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which may be provided in an If-Match request header for PUT or PATCH operations which update this approval type resource. |
deleteApprovalType
Code samples
# You can also use wget
curl -X DELETE /approvals/approvalTypes/{approvalTypeId} \
-H 'Accept: application/hal+json' \
-H 'If-Match: string' \
-H 'API-Key: API_KEY' \
-H 'Authorization: Bearer {access-token}'
DELETE /approvals/approvalTypes/{approvalTypeId} HTTP/1.1
Accept: application/hal+json
If-Match: string
var headers = {
'Accept':'application/hal+json',
'If-Match':'string',
'API-Key':'API_KEY',
'Authorization':'Bearer {access-token}'
};
$.ajax({
url: '/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('/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 '/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('/approvals/approvalTypes/{approvalTypeId}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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) |
string The entity tag that was returned in the ETag response. If supplied, 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. |
Try It
Example responses
401 Response
{
"_profile": "https://api.apiture.com/schemas/common/errorResponse/v2.0.0/profile.json",
"_error": {
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"message": "The value for deposit must be greater than 0.",
"statusCode": 422,
"type": "positiveNumberRequired",
"attributes": {
"value": -125.5
},
"remediation": "Provide a value which is greater than 0",
"occurredAt": "2018-01-25T05:50:52.375Z",
"_links": {
"describedby": {
"href": "https://api.apiture.com/errors/positiveNumberRequired"
}
},
"_embedded": {
"errors": []
}
}
}
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-Match header value does not match the most recent ETag response header value. The resource has changed in the interim. | |
Schema: errorResponse |
API
The Approvals API
getApi
Code samples
# You can also use wget
curl -X GET /approvals/ \
-H 'Accept: application/hal+json' \
-H 'API-Key: API_KEY'
GET /approvals/ HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json',
'API-Key':'API_KEY'
};
$.ajax({
url: '/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('/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 '/approvals/',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'API-Key': 'API_KEY'
}
r = requests.get('/approvals/', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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.
Try It
Example responses
200 Response
{
"id": "apiName",
"name": "API name",
"apiVersion": "1.0.0",
"_profile": "https://production.api.apiture.com/schemas/common/root/v2.0.0/profile.json",
"_links": {}
}
Responses
getApiDoc
Code samples
# You can also use wget
curl -X GET /approvals/apiDoc \
-H 'Accept: application/json' \
-H 'API-Key: API_KEY'
GET /approvals/apiDoc HTTP/1.1
Accept: application/json
var headers = {
'Accept':'application/json',
'API-Key':'API_KEY'
};
$.ajax({
url: '/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('/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 '/approvals/apiDoc',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json',
'API-Key': 'API_KEY'
}
r = requests.get('/approvals/apiDoc', params={
}, headers = headers)
print r.json()
URL obj = new URL("/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", "/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.
Try It
Example responses
200 Response
{}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline |
Response Schema
Schemas
abstractRequest
{
"_profile": "{uri of resource profile.json}",
"_links": {
"self": {
"href": "{uri of current resource}"
}
}
}
Abstract Request (v2.0.0)
An abstract schema used to define other request-only schemas. This is a HAL resource representation, minus the _error
defined in abstractResource
.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
abstractResource
{
"_profile": "{uri of resource profile.json}",
"_links": {
"self": {
"href": "{uri of current resource}"
}
}
}
Abstract Resource (v2.0.0)
An abstract schema used to define other schemas for request and response bodies. This is a HAL resource representation. This model contains hypermedia _links
, and either optional domain object data with _profile
and optional _embedded
objects, or an _error
object. In responses, if the operation was successful, this object will not include the _error
, but if the operation was a 4xx or 5xx error, this object will not include _embedded
or any data fields, only _error
and optionally _links
.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
approval
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"reason": "Invalid U.S. Address",
"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
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. 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 bank customer may lack permissions to approve a wire transfer they submitted.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | approvalEmbeddedObjects Embedded objects. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
label | string The approval's common name. If omitted on create request, this will default to the label of the Approval Type. |
description | string The approval's description. If omitted on create request, this will default to the description of the Approval Type. |
state | approvalState The state of this approval. This property is derived and immutable. Its value can only be changed by using the corresponding POST operations, submitApproval , approveApproval , rejectApproval , waiveApproval , returnApproval , and cancelApproval , if the corresponding links exist on the approval resource, as determined by the existing state of the approval and the allowed states determined by the approval type.
read-only
|
done | boolean If done is true, the approval is in a terminal state and may no longer be acted upon. Done states include canceled , approved , waived or rejected . This property is derived from the state field and is immutable.
read-only
|
typeName | string The name of the Approval Type. This field is immutable and derived from the name of the Approval Type. |
reviewedBy | string The id of the User that reviewed the approval. |
reviewedAt | string(date-time) The date-time when the approval was reviewed. |
_id | string The unique identifier for this approval resource. This is an immutable opaque string. read-only
|
attributes | object An optional map of name/value pairs which provide additional metadata about the approval. |
reason | string The reason given for the last state change, such as why the approval was approved, rejected, waived, canceled, or returned. maxLength: 512
|
createdAt | string(date-time) The date-time when the approval was created. |
updatedAt | string(date-time) The date-time when the approval was updated. |
approvalEmbeddedObjects
{
"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"
}
}
},
"target": {}
}
Approval Embedded Objects
The objects which participate in this approval.
Properties
Name | Description |
---|---|
approvalType | summaryApprovalType The type of this approval. |
target | object The target of this approval. |
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
Common fields of the approval resource, used to define other model schemas.
Properties
Name | Description |
---|---|
label | string The approval's common name. If omitted on create request, this will default to the label of the Approval Type. |
description | string The approval's description. If omitted on create request, this will default to the description of the Approval Type. |
state | approvalState The state of this approval. This property is derived and immutable. Its value can only be changed by using the corresponding POST operations, submitApproval , approveApproval , rejectApproval , waiveApproval , returnApproval , and cancelApproval , if the corresponding links exist on the approval resource, as determined by the existing state of the approval and the allowed states determined by the approval type.
read-only
|
done | boolean If done is true, the approval is in a terminal state and may no longer be acted upon. Done states include canceled , approved , waived or rejected . This property is derived from the state field and is immutable.
read-only
|
typeName | string The name of the Approval Type. This field is immutable and derived from the name of the Approval Type. |
reviewedBy | string The id of the User that reviewed the approval. |
reviewedAt | string(date-time) The date-time when the approval was reviewed. |
approvalState
"open"
Approval State
The approval's state.
open
Created but pending input subject to approvalsubmitted
Pending review by approverapproved
Approval grantedrejected
Approval deniedwaived
Approval forgivenreturned
Approver returns approval for modificationcanceled
Approval request withdrawn
This is an immutable and derived property. Its value can only be changed by using the corresponding POST
operations, submitApproval
, approveApproval
, rejectApproval
, waiveApproval
, returnApproval
, and cancelApproval
.
Type: string
Enumerated values: open
submitted
approved
rejected
waived
returned
canceled
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": "2eae46e1575c0a7b0115a4b3",
"message": "Descriptive error message...",
"statusCode": 422,
"type": "errorType1",
"remediation": "Remediation string...",
"occurredAt": "2018-01-25T05:50:52.375Z",
"errors": [
{
"_id": "ccdbe2c5c938a230667b3827",
"message": "An optional embedded error"
},
{
"_id": "dbe9088dcfe2460f229338a3",
"message": "Another optional embedded error"
}
],
"_links": {
"describedby": {
"href": "https://developer.apiture.com/errors/errorType1"
}
}
},
"name": "string",
"label": "string",
"description": "string",
"domain": "string",
"disallowedStates": [
"rejected"
],
"_id": "string",
"attributes": {},
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
}
Approval Type
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 | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
name | string The approval's name. |
label | string The approval's common name. |
description | string The approval's description. |
domain | string A 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 domain and name must be unique within the set of all approval types. It is a best practice to define domain with a URI or a URN.
|
disallowedStates | [disallowedState] An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The states open and approved are always allowed, so this enumeration set is a subset of the approvalState enumeration on an approval.
|
_id | string The unique identifier for this approval resource. This is an immutable opaque string. read-only
|
attributes | object An 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 |
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
Common fields of the approval resource used to build other model schemas.
Properties
Name | Description |
---|---|
name | string The approval's name. |
label | string The approval's common name. |
description | string The approval's description. |
domain | string A 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 domain and name must be unique within the set of all approval types. It is a best practice to define domain with a URI or a URN.
|
disallowedStates | [disallowedState] An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The states open and approved are always allowed, so this enumeration set is a subset of the approvalState enumeration 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
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 | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object Embedded objects. |
» items | [summaryApprovalType] An array containing a page of approval type items. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
count | integer The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter. |
start | integer The start index of this page of items. |
limit | integer The maximum number of items per page. |
name | string The name of the collection. |
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
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 | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object Embedded objects. |
» items | [summaryApproval] An array containing a page of approval items. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
count | integer The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter. |
start | integer The start index of this page of items. |
limit | integer The maximum number of items per page. |
name | string The name of the collection. |
attributeValue
{}
Attribute Value (v2.0.0)
The data associated with this attribute.
Properties
attributes
{
"property1": {},
"property2": {}
}
Attributes (v2.0.0)
An optional map of name/value pairs which contains additional dynamic data about the resource.
Properties
Name | Description |
---|---|
additionalProperties | attributeValue The data associated with this attribute. |
collection
{
"_links": {
"property1": {
"href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Applicant"
},
"property2": {
"href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Applicant"
}
},
"_embedded": {},
"_profile": "http://example.com",
"_error": {
"_id": "2eae46e1575c0a7b0115a4b3",
"message": "Descriptive error message...",
"statusCode": 422,
"type": "errorType1",
"remediation": "Remediation string...",
"occurredAt": "2018-01-25T05:50:52.375Z",
"errors": [
{
"_id": "ccdbe2c5c938a230667b3827",
"message": "An optional embedded error"
},
{
"_id": "dbe9088dcfe2460f229338a3",
"message": "Another optional embedded error"
}
],
"_links": {
"describedby": {
"href": "https://developer.apiture.com/errors/errorType1"
}
}
},
"count": 0,
"start": 0,
"limit": 0,
"name": "string"
}
Collection (v2.0.0)
A collection of resources. This is an abstract model schema which is extended to define specific resource collections.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
count | integer The number of items in the collection. This value is optional and may be omitted if the count is not computable efficiently. If a filter is applied to the collection (either implicitly or explicitly), the count, if present, indicates the number of items that satisfy the filter. |
start | integer The start index of this page of items. |
limit | integer The maximum number of items per page. |
name | string The name of the collection. |
createApproval
{
"_profile": "https://api.apiture.com/schemas/approvals/approval/v1.0.0/profile.json"
}
Create Approval
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 | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
label | string The approval's common name. If omitted on create request, this will default to the label of the Approval Type. |
description | string The approval's description. If omitted on create request, this will default to the description of the Approval Type. |
state | approvalState The state of this approval. This property is derived and immutable. Its value can only be changed by using the corresponding POST operations, submitApproval , approveApproval , rejectApproval , waiveApproval , returnApproval , and cancelApproval , if the corresponding links exist on the approval resource, as determined by the existing state of the approval and the allowed states determined by the approval type.
read-only
|
done | boolean If done is true, the approval is in a terminal state and may no longer be acted upon. Done states include canceled , approved , waived or rejected . This property is derived from the state field and is immutable.
read-only
|
typeName | string The name of the Approval Type. This field is immutable and derived from the name of the Approval Type. |
reviewedBy | string The id of the User that reviewed the approval. |
reviewedAt | string(date-time) The date-time when the approval was reviewed. |
attributes | object An optional map of name/value pairs which provide additional metadata about the approval. |
createApprovalType
{
"_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json"
}
Create Approval Type
Representation used to create a new approval type.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
name | string (required) The approval's name. |
label | string The approval's common name. |
description | string The approval's description. |
domain | string A 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 domain and name must be unique within the set of all approval types. It is a best practice to define domain with a URI or a URN.
|
disallowedStates | [disallowedState] An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The states open and approved are always allowed, so this enumeration set is a subset of the approvalState enumeration on an approval.
|
attributes | object An optional map of name/value pairs which provide additional metadata about the approval type. |
disallowedState
"rejected"
Disallowed State
A disallowed state for an approval. Approvals of this type may not be set to any of the states defined by this.
Type: string
Enumerated values: rejected
waived
returned
canceled
error
{
"_id": "2eae46e1575c0a7b0115a4b3",
"message": "Descriptive error message...",
"statusCode": 422,
"type": "errorType1",
"remediation": "Remediation string...",
"occurredAt": "2018-01-25T05:50:52.375Z",
"errors": [
{
"_id": "ccdbe2c5c938a230667b3827",
"message": "An optional embedded error"
},
{
"_id": "dbe9088dcfe2460f229338a3",
"message": "Another optional embedded error"
}
],
"_links": {
"describedby": {
"href": "https://developer.apiture.com/errors/errorType1"
}
}
}
Error (v2.0.0)
Describes an error in an API request or in a service called via the API.
Properties
Name | Description |
---|---|
message | string (required) A localized message string describing the error condition. |
_id | string A unique identifier for this error instance. This may be used as a correlation ID with the root cause error (i.e. this ID may be logged at the source of the error). This is is an opaque string. read-only
|
statusCode | integer The HTTP status code associate with this error. minimum: 100
maximum: 599
|
type | string An error identifier which indicates the category of error and associate it with API support documentation or which the UI tier can use to render an appropriate message or hint. This provides a finer level of granularity than the statusCode . For example, instead of just 400 Bad Request, the type may be much more specific. such as integerValueNotInAllowedRange or numericValueExceedsMaximum or stringValueNotInAllowedSet .
|
occurredAt | string(date-time) An RFC 3339 UTC time stamp indicating when the error occurred. |
attributes | attributes Informative values or constraints which describe the error. For example, for a value out of range error, the attributes may specify the minimum and maximum values. This allows clients to present error messages as they see fit (the API does not assume the client/presentation tier). The set of attributes varies by error type .
|
remediation | string An optional localized string which provides hints for how the user or client can resolve the error. |
errors | [error] An optional array of nested error objects. This property is not always present. |
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
errorResponse
{
"_profile": "https://api.apiture.com/schemas/common/errorResponse/v2.0.0/profile.json",
"_error": {
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"message": "The value for deposit must be greater than 0.",
"statusCode": 422,
"type": "positiveNumberRequired",
"attributes": {
"value": -125.5
},
"remediation": "Provide a value which is greater than 0",
"occurredAt": "2018-01-25T05:50:52.375Z",
"_links": {
"describedby": {
"href": "https://api.apiture.com/errors/positiveNumberRequired"
}
},
"_embedded": {
"errors": []
}
}
}
Error Response (v2.0.0)
Describes an error response, typically returned on 4xx or 5xx errors from API operations. The _error
object contains the error details.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
link
{
"href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Applicant"
}
Link (v1.0.0)
Describes a hypermedia link within a _links
object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name
or hreflang
properties of HAL. Apiture links may include a method
property.
Properties
Name | Description |
---|---|
href | string(uri) (required) The URI or URI template for the resource/operation this link refers to. |
type | string The media type for the resource. |
templated | boolean If true, the link's href is a URI template. |
title | string An optional human-readable localized title for the link. |
deprecation | string(uri) If present, the containing link is deprecated and the value is a URI which provides human-readable text information about the deprecation. |
profile | string(uri) The URI of a profile document, a JSON document which describes the target resource/operation. |
links
{
"property1": {
"href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Applicant"
},
"property2": {
"href": "/contacts/contacts/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
"title": "Applicant"
}
}
Links (v1.0.0)
An optional map of links, mapping each link relation to a link object. This model defines the _links
object of HAL representations.
Properties
Name | Description |
---|---|
additionalProperties | link Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.
|
patchApprovalType
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json"
}
Update Approval Type
Representation used to update or patch an approval type.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
name | string The approval's name. |
label | string The approval's common name. |
description | string The approval's description. |
domain | string A 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 domain and name must be unique within the set of all approval types. It is a best practice to define domain with a URI or a URN.
|
disallowedStates | [disallowedState] An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The states open and approved are always allowed, so this enumeration set is a subset of the approvalState enumeration on an approval.
|
_id | string The unique identifier for this approval resource. This is an immutable opaque string. read-only
|
attributes | object An optional map of name/value pairs which provide additional metadata about the approval type. |
root
{
"id": "apiName",
"name": "API name",
"apiVersion": "1.0.0",
"_profile": "https://production.api.apiture.com/schemas/common/root/v2.0.0/profile.json",
"_links": {}
}
API Root (v2.0.0)
A HAL response, with hypermedia _links
for the top-level resources and operations in API.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
_id | string This API's unique ID. read-only
|
name | string This API's name. |
apiVersion | string This API's version. |
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
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 | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
label | string The approval's common name. If omitted on create request, this will default to the label of the Approval Type. |
description | string The approval's description. If omitted on create request, this will default to the description of the Approval Type. |
state | approvalState The state of this approval. This property is derived and immutable. Its value can only be changed by using the corresponding POST operations, submitApproval , approveApproval , rejectApproval , waiveApproval , returnApproval , and cancelApproval , if the corresponding links exist on the approval resource, as determined by the existing state of the approval and the allowed states determined by the approval type.
read-only
|
done | boolean If done is true, the approval is in a terminal state and may no longer be acted upon. Done states include canceled , approved , waived or rejected . This property is derived from the state field and is immutable.
read-only
|
typeName | string The name of the Approval Type. This field is immutable and derived from the name of the Approval Type. |
reviewedBy | string The id of the User that reviewed the approval. |
reviewedAt | string(date-time) The date-time when the approval was reviewed. |
_id | string The unique identifier for this approval resource. This is an immutable opaque string. read-only
|
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
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 | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
name | string The approval's name. |
label | string The approval's common name. |
description | string The approval's description. |
domain | string A 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 domain and name must be unique within the set of all approval types. It is a best practice to define domain with a URI or a URN.
|
disallowedStates | [disallowedState] An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The states open and approved are always allowed, so this enumeration set is a subset of the approvalState enumeration on an approval.
|
_id | string The unique identifier for this approval resource. This is an immutable opaque string. read-only
|
updateApproval
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json"
}
Update Approval
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 | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
label | string The approval's common name. If omitted on create request, this will default to the label of the Approval Type. |
description | string The approval's description. If omitted on create request, this will default to the description of the Approval Type. |
state | approvalState The state of this approval. This property is derived and immutable. Its value can only be changed by using the corresponding POST operations, submitApproval , approveApproval , rejectApproval , waiveApproval , returnApproval , and cancelApproval , if the corresponding links exist on the approval resource, as determined by the existing state of the approval and the allowed states determined by the approval type.
read-only
|
done | boolean If done is true, the approval is in a terminal state and may no longer be acted upon. Done states include canceled , approved , waived or rejected . This property is derived from the state field and is immutable.
read-only
|
typeName | string The name of the Approval Type. This field is immutable and derived from the name of the Approval Type. |
reviewedBy | string The id of the User that reviewed the approval. |
reviewedAt | string(date-time) The date-time when the approval was reviewed. |
_id | string The unique identifier for this approval resource. This is an immutable opaque string. read-only
|
attributes | object An optional map of name/value pairs which provide additional metadata about the approval. |
updateApprovalType
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "https://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json"
}
Update Approval Type
Representation used to update or patch an approval type.
Properties
Name | Description |
---|---|
_links | links An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
|
_embedded | object An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | string(uri) The URI of a resource profile which describes the representation. |
_error | error An object which describes an error. This value is omitted if the operation succeeded without error. |
name | string (required) The approval's name. |
label | string The approval's common name. |
description | string The approval's description. |
domain | string A 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 domain and name must be unique within the set of all approval types. It is a best practice to define domain with a URI or a URN.
|
disallowedStates | [disallowedState] An optional array of states that are not allowed for this approval type. If omitted, all state transitions are allowed. The states open and approved are always allowed, so this enumeration set is a subset of the approvalState enumeration on an approval.
|
_id | string The unique identifier for this approval resource. This is an immutable opaque string. read-only
|
attributes | object An optional map of name/value pairs which provide additional metadata about the approval type. |