Approvals v0.3.0
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
This API manages state-transition based approvals for Financial Institutions. Approval milestones are useful in confirming that part or all of a process is complete.
Examples of approvals may include Identity Verification Document approval or Account Application approval.
Approval States may be one of the following:
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
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.
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 releated to new account opening that need to be manually approved, account applications or transfer requests.
The target of the approval, which may be any resource, is not required but may be provided on the POST
operation that creates the approval. This may be done in the _links
with the link relation apiture:target
. Alternatively, the content to be approved may be embedded within the attributes
on the approval request. It will also be conveyed in the approval representation in the GET
operation on the instance and the summary representation in the /approvals
collection. Some target
examples may include an account application or a document.
Additional data related to an approval or approval type may be stored in the resource's attributes. Attributes can be modified through PATCH
and are not copied from the approval type to the approval.
Download OpenAPI Definition (YAML)
Base URLs:
API
Endpoints which describe this API.
getApi
Code samples
# You can also use wget
curl -X GET /approvals/ \
-H 'Accept: application/hal+json'
GET /approvals/ HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.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'
};
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'
}
result = RestClient.get '/approvals/',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
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"},
}
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
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"id": "apiName",
"name": "API name",
"apiVersion": "0.0.1-SNAPSHOT",
"_profile": "https://api.apiture.com/schemas/root/v1.0.0/profile.json",
"_links": {}
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: root |
getApiDoc
Code samples
# You can also use wget
curl -X GET /approvals/apiDoc \
-H 'Accept: application/json'
GET /approvals/apiDoc HTTP/1.1
Accept: application/json
var headers = {
'Accept':'application/json'
};
$.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'
};
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'
}
result = RestClient.get '/approvals/apiDoc',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/json'
}
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"},
}
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
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: Inline |
Response Schema
Approval
getApprovals
Code samples
# You can also use wget
curl -X GET /approvals/approvals \
-H 'Accept: application/hal+json'
GET /approvals/approvals HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.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'
};
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'
}
result = RestClient.get '/approvals/approvals',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
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"},
}
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. |
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. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_profile": "http://api.apiture.com/schemas/basePath/approvals/v0.1.0/profile.json",
"start": 10,
"limit": 10,
"count": 67,
"name": "approvals",
"_links": {
"self": {
"href": "/basePath/approvals?start=10&limit=10"
},
"first": {
"href": "/basePath/approvals?start=0&limit=10"
},
"next": {
"href": "/basePath/approvals?start=20&limit=10"
},
"collection": {
"href": "/basePath/approvals"
}
},
"_embedded": {
"items": [
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.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 | |
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 | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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'
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'
};
$.ajax({
url: '/approvals/approvals',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_profile": "http://api.apiture.com/schemas/basePath/approval/v1.0.0/profile.json"
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json'
};
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'
}
result = RestClient.post '/approvals/approvals',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json'
}
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"},
}
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 Approval create in either the _links
with the link relation apiture:target
or in attributes
.
Body parameter
{
"_profile": "http://api.apiture.com/schemas/basePath/approval/v1.0.0/profile.json"
}
Parameters
Parameter | Description |
---|---|
body (body) |
createApproval (required) The data necessary to create a new approval. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
201 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
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 | |
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 must 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'
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'
};
$.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'
};
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'
}
result = RestClient.get '/approvals/approvals/{approvalId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-None-Match': 'string'
}
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"},
}
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. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 must 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'
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'
};
$.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": "http://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'
};
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'
}
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'
}
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"},
}
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.
Body parameter
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://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. This must match the current entity tag of the resource. |
body (body) |
updateApproval (required) |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
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 | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 | |
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 | |
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 | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this 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'
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'
};
$.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": "http://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'
};
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'
}
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'
}
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"},
}
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. Fields which are omitted are not updated. Nested _embedded
and _links
are ignored if included.
Body parameter
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://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. This must match the current entity tag of the resource. |
body (body) |
updateApproval (required) |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
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 | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 | |
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 | |
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 | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this approval resource. |
deleteApproval
Code samples
# You can also use wget
curl -X DELETE /approvals/approvals/{approvalId} \
-H 'Accept: application/hal+json'
DELETE /approvals/approvals/{approvalId} HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.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'
};
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'
}
result = RestClient.delete '/approvals/approvals/{approvalId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
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"},
}
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 |
---|---|
approvalId (path) |
string (required) The unique identifier of this approval. This is an opaque string. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
401 Response
{
"_profile": "http://api.apiture.com/schemas/error/v1.0.0/profile.json",
"_error": {
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"_profile": "https://api.apiture.com/schemas/error/v1.0.0/profile.json",
"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": "2019-01-31T13:31:40.575Z",
"_links": {
"describedby": {
"href": "http://doc.apiture.com/errors/positiveNumberRequired"
}
},
"_embedded": {
"errors": []
}
}
}
Responses
Status | Description |
---|---|
204 | No Content |
No Content. The resource was deleted successfully. | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse |
approveApproval
Code samples
# You can also use wget
curl -X POST /approvals/approvedApprovals?approval=string \
-H 'Accept: application/hal+json' \
-H 'If-Match: string'
POST /approvals/approvedApprovals?approval=string HTTP/1.1
Accept: application/hal+json
If-Match: string
var headers = {
'Accept':'application/hal+json',
'If-Match':'string'
};
$.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'
};
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'
}
result = RestClient.post '/approvals/approvedApprovals',
params: {
'approval' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-Match': 'string'
}
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"},
}
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 product types which are submitted
may be approved
.
This operation is invoked from the apiture:approve
link on a product type when it is eligible to be approved.
This changes the state
to approved
.
Parameters
Parameter | Description |
---|---|
approval (query) |
string (required) A server-generated key which identifies an existing approval resource. |
approvalUri (query) |
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. This must match the current entity tag of the resource. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
400 | Bad Request |
Bad Request. The approval or approvalUri parameter was malformed or does not refer to an approval. | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 | |
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 | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
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'
POST /approvals/rejectedApprovals?approval=string HTTP/1.1
Accept: application/hal+json
If-Match: string
var headers = {
'Accept':'application/hal+json',
'If-Match':'string'
};
$.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'
};
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'
}
result = RestClient.post '/approvals/rejectedApprovals',
params: {
'approval' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-Match': 'string'
}
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"},
}
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 product types which are submitted
may be rejected
.
This operation is invoked from the apiture:reject
link on a product type when it is eligible to be rejected.
This changes the state
to rejected
.
Parameters
Parameter | Description |
---|---|
approval (query) |
string (required) A server-generated key which identifies an existing approval resource. |
approvalUri (query) |
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. This must match the current entity tag of the resource. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
400 | Bad Request |
Bad Request. The approval or approvalUri was malformed or does not refer to an approval. | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 | |
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 | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
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'
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'
};
$.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'
};
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'
}
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'
}
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"},
}
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 product types which are open
or submitted
may be waived
.
This operation is invoked from the apiture:waive
link on a product type when it is eligible to be waived.
This changes the state
to waived
.
Parameters
Parameter | Description |
---|---|
approval (query) |
string (required) A server-generated key which identifies an existing approval resource. |
approvalUri (query) |
string (required) The URI of an existing approval which is eligible to be waived. Note: This parameter is deprecated and will be removed in the next version. Use ?approval= instead. |
If-Match (header) |
string The entity tag that was returned in the ETag response. This must match the current entity tag of the resource. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
400 | Bad Request |
Bad Request. The 'approvalor approvalUri` was malformed or does not refer to an approval. | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 | |
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 | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
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'
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'
};
$.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'
};
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'
}
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'
}
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"},
}
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 product types which are open
or returned
may be submitted
.
This operation is invoked from the apiture:submit
link on a product type when it is eligible to be submitted.
This changes the state
to submitted
.
Parameters
Parameter | Description |
---|---|
approval (query) |
string (required) A server-generated key which identifies an existing approval resource. |
approvalUri (query) |
string (required) The URI of an existing approval which is eligible to be submitted. Note: This parameter is deprecated and will be removed in the next version. Use ?approval= instead. |
If-Match (header) |
string The entity tag that was returned in the ETag response. This must match the current entity tag of the resource. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
400 | Bad Request |
Bad Request. The approval or approvalUri was malformed or does not refer to an approval. | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 | |
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 | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
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'
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'
};
$.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'
};
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'
}
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'
}
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"},
}
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 product types which are submitted
may be returned
.
This operation is invoked from the apiture:return
link on a product type when it is eligible to be returned.
This changes the state
to returned
.
Parameters
Parameter | Description |
---|---|
approval (query) |
string (required) A server-generated key which identifies an existing approval resource. |
approvalUri (query) |
string (required) The URI of an existing approval which is eligible to be returned. Note: This parameter is deprecated and will be removed in the next version. Use ?approval= instead. |
If-Match (header) |
string The entity tag that was returned in the ETag response. This must match the current entity tag of the resource. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
400 | Bad Request |
Bad Request. The approval or approvalUri was malformed or does not refer to an approval. | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 | |
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 | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
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'
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'
};
$.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'
};
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'
}
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'
}
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"},
}
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 product types which are open
, submitted
or returned
may be canceled
.
This operation is invoked from the apiture:cancel
link on a product type when it is eligible to be cenceled.
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. This must match the current entity tag of the resource. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
400 | Bad Request |
Bad Request. The approval or approvalUri was malformed or does not refer to an approval. | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 | |
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 | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
Schema: errorResponse |
Approval Type
getApprovalTypes
Code samples
# You can also use wget
curl -X GET /approvals/approvalTypes \
-H 'Accept: application/hal+json'
GET /approvals/approvalTypes HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.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'
};
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'
}
result = RestClient.get '/approvals/approvalTypes',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
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"},
}
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. |
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. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_profile": "http://api.apiture.com/schemas/basePath/approvalTypes/v0.1.0/profile.json",
"start": 10,
"limit": 10,
"count": 67,
"name": "approvalTypes",
"_links": {
"self": {
"href": "/basePath/approvalTypes?start=10&limit=10"
},
"first": {
"href": "/basePath/approvalTypes?start=0&limit=10"
},
"next": {
"href": "/basePath/approvalTypes?start=20&limit=10"
},
"collection": {
"href": "/basePath/approvalTypes"
}
},
"_embedded": {
"items": [
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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 | |
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 | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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'
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'
};
$.ajax({
url: '/approvals/approvalTypes',
method: 'post',
headers: headers,
success: function(data) {
console.log(JSON.stringify(data));
}
})
const fetch = require('node-fetch');
const inputBody = '{
"_profile": "http://api.apiture.com/schemas/basePath/approvalTypes/v1.0.0/profile.json"
}';
const headers = {
'Content-Type':'application/hal+json',
'Accept':'application/hal+json'
};
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'
}
result = RestClient.post '/approvals/approvalTypes',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Content-Type': 'application/hal+json',
'Accept': 'application/hal+json'
}
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"},
}
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": "http://api.apiture.com/schemas/basePath/approvalTypes/v1.0.0/profile.json"
}
Parameters
Parameter | Description |
---|---|
body (body) |
createApprovalType (required) The data necessary to create a new approval type. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
201 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
"createdAt": "2019-01-31T13:31:42Z",
"updatedAt": "2019-01-31T13:31:42Z"
}
Responses
Status | Description |
---|---|
201 | Created |
Created | |
Schema: approvalType | |
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 | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 must 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'
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'
};
$.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'
};
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'
}
result = RestClient.get '/approvals/approvalTypes/{approvalTypeId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json',
'If-None-Match': 'string'
}
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"},
}
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
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
"createdAt": "2019-01-31T13:31:42Z",
"updatedAt": "2019-01-31T13:31:42Z"
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: approvalType | |
304 | Not Modified |
Not Modified. The resource has not been modified since it was last fetched. | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this 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'
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'
};
$.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": "http://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'
};
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'
}
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'
}
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"},
}
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": "http://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. This must match the current entity tag of the resource. |
body (body) |
updateApprovalType (required) |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
"createdAt": "2019-01-31T13:31:42Z",
"updatedAt": "2019-01-31T13:31:42Z"
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: approvalType | |
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 | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 | |
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 | |
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 | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this 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'
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'
};
$.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": "http://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'
};
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'
}
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'
}
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"},
}
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": "http://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. This must match the current entity tag of the resource. |
body (body) |
patchApprovalType (required) |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
200 Response
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
"createdAt": "2019-01-31T13:31:42Z",
"updatedAt": "2019-01-31T13:31:42Z"
}
Responses
Status | Description |
---|---|
200 | OK |
OK | |
Schema: approvalType | |
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 | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 | |
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 | |
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 | |
428 | Precondition Required |
Precondition Required. The request did not include the required if-Match header. Resubmit with the operation, supplying the value of the ETag and the most recent state of the resource. | |
Schema: errorResponse |
Response Headers
Status | Description |
---|---|
200 | ETag string |
The ETag response header specifies an entity tag which must be provided in an If-Match request header for PUT or PATCH operations which update this approval type resource. |
deleteApprovalType
Code samples
# You can also use wget
curl -X DELETE /approvals/approvalTypes/{approvalTypeId} \
-H 'Accept: application/hal+json'
DELETE /approvals/approvalTypes/{approvalTypeId} HTTP/1.1
Accept: application/hal+json
var headers = {
'Accept':'application/hal+json'
};
$.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'
};
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'
}
result = RestClient.delete '/approvals/approvalTypes/{approvalTypeId}',
params: {
}, headers: headers
p JSON.parse(result)
import requests
headers = {
'Accept': 'application/hal+json'
}
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"},
}
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 |
---|---|
approvalTypeId (path) |
string (required) The unique identifier of this approval type. This is an opaque string. |
Try it
Fields marked with * are mandatory.
Response
Response Code:
Response Headers:
Response Body:
Click on 'Try It' to get a response.
Example responses
401 Response
{
"_profile": "http://api.apiture.com/schemas/error/v1.0.0/profile.json",
"_error": {
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"_profile": "https://api.apiture.com/schemas/error/v1.0.0/profile.json",
"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": "2019-01-31T13:31:40.575Z",
"_links": {
"describedby": {
"href": "http://doc.apiture.com/errors/positiveNumberRequired"
}
},
"_embedded": {
"errors": []
}
}
}
Responses
Status | Description |
---|---|
204 | No Content |
No Content. The resource was deleted successfully. | |
401 | Unauthorized |
Unauthorized. The request has not been applied because it lacks valid authentication credentials for the target resource. | |
Schema: errorResponse | |
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 |
Schemas
approvalFields
{
"state": "active",
"done": true,
"label": "Government Issued ID",
"typeName": "governmentId",
"description": "A document that identifies a user",
"reviewedBy": "/users/users/0399abed-fd3d-4830-a88b-30f38b8a365c",
"reviewedAt": "2018-04-17T10:12:58.375Z"
}
Approval Fields
Properties
Schema Name | Description |
---|---|
label | string The approval's common name. If ommitted on create request, this will default to the label of the Approval Type. |
description | string The approval's description. If ommitted on create request, this will default to the description of the Approval Type. |
state | string The approval's state.
This is an immutable and derived property. It's value can only be changed by using the corresponding |
done | boolean Inferred done flag. 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 . |
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. |
Enumerated Values
Property | Value |
---|---|
state | open |
state | submitted |
state | approved |
state | rejected |
state | waived |
state | returned |
state | canceled |
createApproval
{
"_profile": "http://api.apiture.com/schemas/basePath/approval/v1.0.0/profile.json"
}
Create Approval
Properties
Schema Name | Description |
---|---|
Create Approval | any 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. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | approvalFields Common fields of the approval resource used to build other model schemas. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
attributes | object An optional map of name/value pairs which provide additional metadata about the approval. |
summaryApproval
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
}
}
Approval Summary
Properties
Schema Name | Description |
---|---|
Approval Summary | any 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. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | approvalFields Common fields of the approval resource used to build other model schemas. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_id | string The unique identifier for this approval resource. This is an immutable opaque string. |
updateApproval
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v1.0.0/profile.json"
}
Update Approval
Properties
Schema Name | Description |
---|---|
Update Approval | any 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 ). |
allOf
Schema Name | Description |
---|---|
anonymous | summaryApproval 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. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
attributes | object An optional map of name/value pairs which provide additional metadata about the approval. |
approval
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.0/profile.json",
"createdAt": "2018-04-17T10:04:46.375Z",
"updatedAt": "2018-04-17T10:12:58.375Z",
"_links": {
"self": {
"href": "/approvals/approvals/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:approvalType": {
"href": "/approvals/approvalTypes/e4f09b4d-eba6-46da-86d3-ba28595067cd"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"_embedded": {
"approvalType": {
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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
Properties
Schema Name | Description |
---|---|
Approval | any An approval represents the review of some process, activity or resource, such as a document or an application. The state of the approval is recorded in its state property. The target of the approval is in the link named apiture:target ; see the Create Approval schema and createApproval operation. Links on an approval convey which state transitions are available. These links are:
The client should use The absence of a link indicates that the particular state transition is not available at that time or that the caller is not authorized to make the change. For example, a user may lack permissions to approve a wire transfer they submitted. |
allOf
Schema Name | Description |
---|---|
anonymous | updateApproval 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 ). |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
createdAt | string(date-time) The date-time when the approval was created. |
updatedAt | string(date-time) The date-time when the approval was updated |
_embedded | object The objects which participate in this association |
approvalType | summaryApprovalType The role for this association |
approvals
{
"_profile": "http://api.apiture.com/schemas/basePath/approvals/v0.1.0/profile.json",
"start": 10,
"limit": 10,
"count": 67,
"name": "approvals",
"_links": {
"self": {
"href": "/basePath/approvals?start=10&limit=10"
},
"first": {
"href": "/basePath/approvals?start=0&limit=10"
},
"next": {
"href": "/basePath/approvals?start=20&limit=10"
},
"collection": {
"href": "/basePath/approvals"
}
},
"_embedded": {
"items": [
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvals/v0.1.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
Properties
Schema Name | Description |
---|---|
Approval Collection | any 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 .) |
allOf
Schema Name | Description |
---|---|
anonymous | collection A collection of resources. This is an abstract model schema which is extended to define specific resource collections. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_embedded | object undefined |
items | [summaryApproval] An array containing a page of approval items. |
approvalTypeFields
{
"name": "governmentId",
"label": "Government Issued ID",
"description": "A document that identifies a user",
"domain": "http://api.apiture.com/domains/approvals/documentRequirement"
}
Approval Type Fields
Properties
Schema 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 Approval Types that it defines. The combination of domain and name must be unique within the set of all resources of this type. It is a best practice to define domains with URIs. |
approvalTypes
{
"_profile": "http://api.apiture.com/schemas/basePath/approvalTypes/v0.1.0/profile.json",
"start": 10,
"limit": 10,
"count": 67,
"name": "approvalTypes",
"_links": {
"self": {
"href": "/basePath/approvalTypes?start=10&limit=10"
},
"first": {
"href": "/basePath/approvalTypes?start=0&limit=10"
},
"next": {
"href": "/basePath/approvalTypes?start=20&limit=10"
},
"collection": {
"href": "/basePath/approvalTypes"
}
},
"_embedded": {
"items": [
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v0.1.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
Properties
Schema Name | Description |
---|---|
Approval Types Collection | any 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 .) |
allOf
Schema Name | Description |
---|---|
anonymous | collection A collection of resources. This is an abstract model schema which is extended to define specific resource collections. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_embedded | object undefined |
items | [summaryApprovalType] An array containing a page of approval type items. |
createApprovalType
{
"_profile": "http://api.apiture.com/schemas/basePath/approvalTypes/v1.0.0/profile.json"
}
Create Approval Type
Properties
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | approvalTypeFields Common fields of the approval resource used to build other model schemas. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
attributes | object An optional map of name/value pairs which provide additional metadata about the approval type. |
approvalType
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
"createdAt": "2019-01-31T13:31:42Z",
"updatedAt": "2019-01-31T13:31:42Z"
}
Approval Type
Properties
Schema Name | Description |
---|---|
Approval Type | any 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 onle be deleted if they are not in use by any existing Approvals. Some examples of Approval Types may be specific documents releated to New Account Opening that need to be manually approved, Account Applications or Transfer requests. |
allOf
Schema Name | Description |
---|---|
anonymous | updateApprovalType Representation used to update or patch an approval type. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
createdAt | string(date-time) The date-time when the approval was created. |
updatedAt | string(date-time) The date-time when the approval was updated |
updateApprovalType
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json"
}
Update Approval Type
Properties
allOf
Schema Name | Description |
---|---|
anonymous | summaryApprovalType 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. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
attributes | object An optional map of name/value pairs which provide additional metadata about the approval type. |
patchApprovalType
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json"
}
Update Approval Type
Properties
Schema Name | Description |
---|---|
Update Approval Type | any Representation used to update or patch an approval type. |
allOf
Schema Name | Description |
---|---|
anonymous | summaryApprovalType 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. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
attributes | object An optional map of name/value pairs which provide additional metadata about the approval type. |
summaryApprovalType
{
"_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
"_profile": "http://api.apiture.com/schemas/approvals/approvalTypes/v1.0.0/profile.json",
"_links": {
"self": {
"href": "/approvals/approvalTypes/0399abed-fd3d-4830-a88b-30f38b8a365c"
}
}
}
Approval Type Summary
Properties
Schema Name | Description |
---|---|
Approval Type Summary | any 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. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | approvalTypeFields Common fields of the approval resource used to build other model schemas. |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_id | string The unique identifier for this approval resource. This is an immutable opaque string. |
abstractResource
{
"_profile": "http://api.apiture.com/schemas/example/v1.0.0/profile.json",
"_links": {
"self": {
"href": "{uri of current resource}"
},
"apiture:approvalType": {
"href": "/approvals/approvalType/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
}
}
Abstract Resource
Properties
Schema 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. |
root
{
"id": "apiName",
"name": "API name",
"apiVersion": "0.0.1-SNAPSHOT",
"_profile": "https://api.apiture.com/schemas/root/v1.0.0/profile.json",
"_links": {}
}
API Root
Properties
Schema Name | Description |
---|---|
API Root | any A HAL response, with hypermedia _links for the top-level resources and operations in API. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
_id | string This API's unique ID. |
name | string This API's name. |
apiVersion | string This API's version. |
errorResponse
{
"_profile": "http://api.apiture.com/schemas/error/v1.0.0/profile.json",
"_error": {
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"_profile": "https://api.apiture.com/schemas/error/v1.0.0/profile.json",
"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": "2019-01-31T13:31:40.575Z",
"_links": {
"describedby": {
"href": "http://doc.apiture.com/errors/positiveNumberRequired"
}
},
"_embedded": {
"errors": []
}
}
}
Error Response
Properties
Schema Name | Description |
---|---|
Error Response | abstractResource Describes an error response, typically returned on 4xx or 5xx errors from API operations. The _error object contains the error details. |
error
{
"_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
"_profile": "https://api.apiture.com/schemas/error/v1.0.0/profile.json",
"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": "http://doc.apiture.com/errors/positiveNumberRequired"
}
},
"_embedded": {
"errors": []
}
}
Error
Properties
Schema 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. |
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 ISO 8601 UTC time stamp indicating when the error occurred. |
attributes | attributes Data attribute associated with the error, such as values or constraints. |
remediation | string An optional localized string which provides hints for how the user or client can resolve the error. |
_embedded | object Optional embedded array of errors. This field may not exist if the error does not have nested errors. |
items | [errorResponse] An array of error objects. |
attributes
{}
Attributes
Properties
No properties
links
{
"property1": {
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
},
"property2": {
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
}
}
Links
Properties
Schema 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. |
link
{
"href": "http://example.com",
"type": "string",
"templated": true,
"title": "string",
"deprecation": "http://example.com",
"profile": "http://example.com"
}
Link
Properties
Schema 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. |
collection
{
"_profile": "http://api.apiture.com/schemas/example/v1.0.0/profile.json",
"_links": {
"self": {
"href": "{uri of current resource}"
},
"apiture:approvalType": {
"href": "/approvals/approvalType/0399abed-fd3d-4830-a88b-30f38b8a365c"
},
"apiture:target": {
"href": "/vault/files/e4f09b4d-eba6-46da-86d3-hjr434fuhe"
}
},
"count": 0,
"start": 0,
"limit": 0,
"name": "string"
}
Collection
Properties
Schema Name | Description |
---|---|
Collection | any A collection of resources. This is an abstract model schema which is extended to define specific resource collections. |
allOf
Schema Name | Description |
---|---|
anonymous | abstractResource An augmented 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 . |
and
Schema Name | Description |
---|---|
anonymous | object undefined |
count | integer The number of items in the full collection. |
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. |