NAV Navigation
Shell HTTP JavaScript Node.JS Ruby Python Java Go

Associations v0.1.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.

The Associations API associates source resources to target resources using association roles.

Download OpenAPI Definition (YAML)

Base URLs:

Terms of service

Email: Apiture Web: Apiture

API

The Associations API

getApi

Code samples

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

GET /associations/ HTTP/1.1

Accept: application/hal+json

var headers = {
  'Accept':'application/hal+json'

};

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

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

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

const headers = {
  'Accept':'application/hal+json'

};

fetch('/associations/',
{
  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 '/associations/',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json'
}

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

}, headers = headers)

print r.json()

URL obj = new URL("/associations/");
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", "/associations/", data)
    req.Header = headers

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

Top-level resources and operations in this API

GET /

Return links to the top-level resources and operations in this API. This API returns the following links: apiture:associations : links to the collection of associations held at this financial institution. apiture:roles : links to the collection of roles held at this financial institution.

Try it

Fields marked with * are mandatory.

ParameterValue
MethodGET
* URL
* API Key
* Access Token

Response

Response Code:

Response Headers:

Response Body:

    
      Click on 'Try It' to get a response.
    
  

Example responses

OK

{
  "id": "associations",
  "name": "Associations",
  "apiVersion": "0.1.0",
  "_profile": "https://api.apiture.com/schemas/apiRoot/v.0.1.0/profile.json",
  "_links": {
    "apiture:associations": {
      "href": "/associations/associations"
    },
    "apiture:roles": {
      "href": "/associations/roles"
    }
  }
}

200 Response

{
  "id": "apiName",
  "name": "API name",
  "apiVersion": "0.0.1-SNAPSHOT",
  "_profile": "https://api.apiture.com/schemas/apiRoot/v1.0.0/profile.json",
  "_links": {}
}

Responses

StatusDescription
200 OK
OK
Schema: root

getApiDoc

Code samples

# You can also use wget
curl -X GET /associations/apiDoc \
  -H 'Accept: application/json'

GET /associations/apiDoc HTTP/1.1

Accept: application/json

var headers = {
  'Accept':'application/json'

};

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

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

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

const headers = {
  'Accept':'application/json'

};

fetch('/associations/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 '/associations/apiDoc',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

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

}, headers = headers)

print r.json()

URL obj = new URL("/associations/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", "/associations/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.

ParameterValue
MethodGET
* URL
* API Key
* Access Token

Response

Response Code:

Response Headers:

Response Body:

    
      Click on 'Try It' to get a response.
    
  

Example responses

200 Response

{}

Responses

StatusDescription
200 OK
OK
Schema: Inline

Response Schema

Association

Association between Two Resources

getAssociations

Code samples

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

GET /associations/associations HTTP/1.1

Accept: application/hal+json

var headers = {
  'Accept':'application/hal+json'

};

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

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

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

const headers = {
  'Accept':'application/hal+json'

};

fetch('/associations/associations',
{
  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 '/associations/associations',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json'
}

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

}, headers = headers)

print r.json()

URL obj = new URL("/associations/associations");
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", "/associations/associations", data)
    req.Header = headers

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

Return a collection of associations.

GET /associations

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

Parameters

Parameter Description
start
(query)
integer(int64)
The zero-based index of the first association item to include in this page. The default 0 denotes the beginning of the collection.
limit
(query)
integer(int32)
The maximum number of association 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.

ParameterValue
MethodGET
* URL
* API Key
* Access Token

start

limit

sortBy

filter

q

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/collection/accounts/association/v1.0.0/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "associations",
  "_links": {
    "self": {
      "href": "/associations/associations?start=10&limit=10"
    },
    "first": {
      "href": "/associations/associations?start=0&limit=10"
    },
    "next": {
      "href": "/associations/associations?start=20&limit=10"
    },
    "collection": {
      "href": "/associations/associations"
    }
  },
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "http://api.apiture.com/schemas/associations/association/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "/associations/associations/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        },
        "roleName": "primaryUser",
        "_embedded": {
          "role": {
            "_id": "c83790c9-8bcb-4754-a989-7a45342697cb",
            "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
            "name": "primaryUser",
            "label": "primaryUser",
            "description": "The account owner has full control across the account. For personal accounts, the orimary user is also known as the account owner. For organization accounts, the organization is the \"owner\"; the primary user is the person who is granted administration permissions on the account, which includes managing permissions and roles of other users associated with the account.\nThere may be only one primary user."
          },
          "target": {
            "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
            "_profile": "http://api.apiture.com/schemas/user/v1.0.0/profile.json",
            "type": "user",
            "firstName": "Bobette",
            "middleName": "",
            "lastName": "Wellphunded"
          },
          "source": {
            "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
            "_profile": "http://api.apiture.com/schemas/accounts/v1.0.0/profile.json",
            "type": "account",
            "name": "Personal Checking"
          }
        }
      }
    ]
  }
}

Responses

StatusDescription
200 OK
OK
Schema: associations
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
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

createAssociation

Code samples

# You can also use wget
curl -X POST /associations/associations \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json'

POST /associations/associations 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: '/associations/associations',
  method: 'post',

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

const fetch = require('node-fetch');
const inputBody = '{
  "sourceUri": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "roleUri": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd",
  "roleName": "primaryUser",
  "targetUri": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "_profile": "http://api.apiture.com/schemas/example/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "{uri of current resource}"
    }
  }
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json'

};

fetch('/associations/associations',
{
  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 '/associations/associations',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/hal+json',
  'Accept': 'application/hal+json'
}

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

}, headers = headers)

print r.json()

URL obj = new URL("/associations/associations");
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", "/associations/associations", data)
    req.Header = headers

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

Create a new association

POST /associations

Create a new association between two resources. The request must include a valid link (apiture:source) to a source resource, (apiture:role) to an association role instance and a link (apiture:target) to a target resource.

Body parameter

{
  "sourceUri": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "roleUri": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd",
  "roleName": "primaryUser",
  "targetUri": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "_profile": "http://api.apiture.com/schemas/example/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "{uri of current resource}"
    }
  }
}

Parameters

Parameter Description
body
(body)
createAssociation (required)
The data necessary to create a new association.

Try it

Fields marked with * are mandatory.

ParameterValue
MethodPOST
* URL
* API Key
* Access Token

* body

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/associations/association/v1.0.0/profile.json",
  "_links": {
    "apiture:role": {
      "href": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:source": {
      "href": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed"
    },
    "apiture:target": {
      "href": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed"
    }
  },
  "sourceUri": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "roleUri": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd",
  "roleName": "primaryUser",
  "targetUri": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "_embedded": {
    "source": {
      "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
      "_profile": "http://api.apiture.com/schemas/accounts/v1.0.0/profile.json",
      "type": "account",
      "name": "Personal Checking",
      "TODO": "Refine this example when Accounts API is defined."
    },
    "role": {
      "_id": "c83790c9-8bcb-4754-a989-7a45342697cb",
      "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
      "name": "primaryUser",
      "label": "Primary User",
      "description": "The account owner has full control across the account. For personal accounts, the primary user is also known as the account owner. For organization accounts, the organization is the \"owner\"; the primary user is the person who is granted administration permissions on the account, which includes managing permissions and roles of other users associated with the account.\nThere may be only one primary user."
    },
    "target": {
      "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
      "_profile": "http://api.apiture.com/schemas/user/v1.0.0/profile.json",
      "type": "user",
      "firstName": "Bobette",
      "middleName": "",
      "lastName": "Wellphunded",
      "TODO": "Refine this example when Users API is defined."
    }
  }
}

Responses

StatusDescription
201 Created
Created.

A representation of the new assocuation is returned, including the self link, the role, source and target of the association.

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

Response Headers

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

getAssociation

Code samples

# You can also use wget
curl -X GET /associations/associations/{associationId} \
  -H 'Accept: application/hal+json' \
  -H 'If-None-Match: string'

GET /associations/associations/{associationId} HTTP/1.1

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

var headers = {
  'Accept':'application/hal+json',
  'If-None-Match':'string'

};

$.ajax({
  url: '/associations/associations/{associationId}',
  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('/associations/associations/{associationId}',
{
  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 '/associations/associations/{associationId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'If-None-Match': 'string'
}

r = requests.get('/associations/associations/{associationId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("/associations/associations/{associationId}");
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", "/associations/associations/{associationId}", data)
    req.Header = headers

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

Fetch a representation of this association

GET /associations/{associationId}

Return a HAL representation of this association resource.

Parameters

Parameter Description
associationId
(path)
string (required)
The unique identifier of this association. 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.

ParameterValue
MethodGET
* URL
* API Key
* Access Token

* associationId

If-None-Match

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/associations/association/v1.0.0/profile.json",
  "_links": {
    "apiture:role": {
      "href": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:source": {
      "href": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed"
    },
    "apiture:target": {
      "href": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed"
    }
  },
  "sourceUri": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "roleUri": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd",
  "roleName": "primaryUser",
  "targetUri": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "_embedded": {
    "source": {
      "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
      "_profile": "http://api.apiture.com/schemas/accounts/v1.0.0/profile.json",
      "type": "account",
      "name": "Personal Checking",
      "TODO": "Refine this example when Accounts API is defined."
    },
    "role": {
      "_id": "c83790c9-8bcb-4754-a989-7a45342697cb",
      "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
      "name": "primaryUser",
      "label": "Primary User",
      "description": "The account owner has full control across the account. For personal accounts, the primary user is also known as the account owner. For organization accounts, the organization is the \"owner\"; the primary user is the person who is granted administration permissions on the account, which includes managing permissions and roles of other users associated with the account.\nThere may be only one primary user."
    },
    "target": {
      "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
      "_profile": "http://api.apiture.com/schemas/user/v1.0.0/profile.json",
      "type": "user",
      "firstName": "Bobette",
      "middleName": "",
      "lastName": "Wellphunded",
      "TODO": "Refine this example when Users API is defined."
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: association
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
404 Not Found
Not Found. There is no such association resource at the specified {associationId} The _error field in the response will contain details about the request error.
Schema: error

Response Headers

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

patchAssociation

Code samples

# You can also use wget
curl -X PATCH /associations/associations/{associationId} \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string'

PATCH /associations/associations/{associationId} 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: '/associations/associations/{associationId}',
  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/associations/associations/v1.0.0/profile.json"
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string'

};

fetch('/associations/associations/{associationId}',
{
  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 '/associations/associations/{associationId}',
  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('/associations/associations/{associationId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("/associations/associations/{associationId}");
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", "/associations/associations/{associationId}", data)
    req.Header = headers

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

Update this association

PATCH /associations/{associationId}

Perform a partial update of this association. Fields which are omitted are not updated.

Body parameter

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "http://api.apiture.com/schemas/associations/associations/v1.0.0/profile.json"
}

Parameters

Parameter Description
associationId
(path)
string (required)
The unique identifier of this association. 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)
updateAssociation (required)

Try it

Fields marked with * are mandatory.

ParameterValue
MethodPATCH
* URL
* API Key
* Access Token

* associationId

If-Match

* body

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/associations/association/v1.0.0/profile.json",
  "_links": {
    "apiture:role": {
      "href": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:source": {
      "href": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed"
    },
    "apiture:target": {
      "href": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed"
    }
  },
  "sourceUri": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "roleUri": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd",
  "roleName": "primaryUser",
  "targetUri": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "_embedded": {
    "source": {
      "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
      "_profile": "http://api.apiture.com/schemas/accounts/v1.0.0/profile.json",
      "type": "account",
      "name": "Personal Checking",
      "TODO": "Refine this example when Accounts API is defined."
    },
    "role": {
      "_id": "c83790c9-8bcb-4754-a989-7a45342697cb",
      "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
      "name": "primaryUser",
      "label": "Primary User",
      "description": "The account owner has full control across the account. For personal accounts, the primary user is also known as the account owner. For organization accounts, the organization is the \"owner\"; the primary user is the person who is granted administration permissions on the account, which includes managing permissions and roles of other users associated with the account.\nThere may be only one primary user."
    },
    "target": {
      "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
      "_profile": "http://api.apiture.com/schemas/user/v1.0.0/profile.json",
      "type": "user",
      "firstName": "Bobette",
      "middleName": "",
      "lastName": "Wellphunded",
      "TODO": "Refine this example when Users API is defined."
    }
  }
}

Responses

StatusDescription
200 OK
OK
Schema: association
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
404 Not Found
Not Found. There is no such association resource at the specified {associationId} The _error field in the response will contain details about the request error.
Schema: error
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

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

deleteAssociation

Code samples

# You can also use wget
curl -X DELETE /associations/associations/{associationId}

DELETE /associations/associations/{associationId} HTTP/1.1


$.ajax({
  url: '/associations/associations/{associationId}',
  method: 'delete',

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

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

fetch('/associations/associations/{associationId}',
{
  method: 'DELETE'

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

require 'rest-client'
require 'json'

result = RestClient.delete '/associations/associations/{associationId}',
  params: {
  }

p JSON.parse(result)

import requests

r = requests.delete('/associations/associations/{associationId}', params={

)

print r.json()

URL obj = new URL("/associations/associations/{associationId}");
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() {

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

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

Delete this association resource

DELETE /associations/{associationId}

Delete this association resource and any resources that are owned by it. Deleting an association does not delete the source, role, or target resources.

Parameters

Parameter Description
associationId
(path)
string (required)
The unique identifier of this association. This is an opaque string.

Try it

Fields marked with * are mandatory.

ParameterValue
MethodDELETE
* URL
* API Key
* Access Token

* associationId

Response

Response Code:

Response Headers:

Response Body:

    
      Click on 'Try It' to get a response.
    
  

Responses

StatusDescription
204 No Content
No Content. The resource was deleted successfully.

Role

The Role of an Association

getRoles

Code samples

# You can also use wget
curl -X GET /associations/roles \
  -H 'Accept: application/hal+json'

GET /associations/roles HTTP/1.1

Accept: application/hal+json

var headers = {
  'Accept':'application/hal+json'

};

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

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

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

const headers = {
  'Accept':'application/hal+json'

};

fetch('/associations/roles',
{
  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 '/associations/roles',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json'
}

r = requests.get('/associations/roles', params={

}, headers = headers)

print r.json()

URL obj = new URL("/associations/roles");
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", "/associations/roles", data)
    req.Header = headers

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

Return a collection of roles

GET /roles

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

Parameters

Parameter Description
start
(query)
integer(int64)
The zero-based index of the first role item to include in this page. The default 0 denotes the beginning of the collection.
limit
(query)
integer(int32)
The maximum number of role 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.

ParameterValue
MethodGET
* URL
* API Key
* Access Token

start

limit

sortBy

filter

q

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/collection/role/v1.0.0/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "roles",
  "_links": {
    "self": {
      "href": "/associations/roles?start=10&limit=10"
    },
    "first": {
      "href": "/associations/roles?start=0&limit=10"
    },
    "next": {
      "href": "/associations/roles?start=20&limit=10"
    },
    "collection": {
      "href": "/associations/roles"
    }
  },
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
        "name": "primaryUser",
        "label": "Primary User",
        "description": "The primary user on the account.\nThere may be only one primary user on an account.",
        "_links": {
          "self": {
            "href": "/associations/roles/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        }
      },
      {
        "_id": "1e0c734d-f0e7-4204-942d-222a860eed03",
        "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
        "name": "beneficiary",
        "label": "Beneficiary",
        "description": "An account beneficiary.",
        "_links": {
          "self": {
            "href": "/associations/roles/1e0c734d-f0e7-4204-942d-222a860eed03"
          }
        }
      }
    ]
  }
}

Responses

StatusDescription
200 OK
OK
Schema: roles
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
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

createRole

Code samples

# You can also use wget
curl -X POST /associations/roles \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json'

POST /associations/roles 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: '/associations/roles',
  method: 'post',

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

const fetch = require('node-fetch');
const inputBody = '{
  "name": "primaryUser",
  "label": "Primary User",
  "description": "The primary user on the account.\nThere may be only one primary user on an account.",
  "_profile": "http://api.apiture.com/schemas/example/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "{uri of current resource}"
    }
  }
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json'

};

fetch('/associations/roles',
{
  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 '/associations/roles',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Content-Type': 'application/hal+json',
  'Accept': 'application/hal+json'
}

r = requests.post('/associations/roles', params={

}, headers = headers)

print r.json()

URL obj = new URL("/associations/roles");
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", "/associations/roles", data)
    req.Header = headers

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

Create a new role

POST /roles

Create a new role which is used to associate two resources.

Body parameter

{
  "name": "primaryUser",
  "label": "Primary User",
  "description": "The primary user on the account.\nThere may be only one primary user on an account.",
  "_profile": "http://api.apiture.com/schemas/example/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "{uri of current resource}"
    }
  }
}

Parameters

Parameter Description
body
(body)
createRole (required)
The data necessary to create a new role.

Try it

Fields marked with * are mandatory.

ParameterValue
MethodPOST
* URL
* API Key
* Access Token

* body

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/associations/role/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "/associations/roles/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  },
  "name": "primaryUser",
  "label": "Primary User",
  "createdAt": "2018-02-01T13:07:01.375Z",
  "description": "The account owner has full control across the account.\n \nThere may be only one primary user. "
}

Responses

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

Response Headers

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

getRole

Code samples

# You can also use wget
curl -X GET /associations/roles/{roleId} \
  -H 'Accept: application/hal+json' \
  -H 'If-None-Match: string'

GET /associations/roles/{roleId} HTTP/1.1

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

var headers = {
  'Accept':'application/hal+json',
  'If-None-Match':'string'

};

$.ajax({
  url: '/associations/roles/{roleId}',
  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('/associations/roles/{roleId}',
{
  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 '/associations/roles/{roleId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/hal+json',
  'If-None-Match': 'string'
}

r = requests.get('/associations/roles/{roleId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("/associations/roles/{roleId}");
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", "/associations/roles/{roleId}", data)
    req.Header = headers

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

Fetch a representation of this role

GET /roles/{roleId}

Return a HAL representation of this role resource.

Parameters

Parameter Description
roleId
(path)
string (required)
The unique identifier of this role. 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.

ParameterValue
MethodGET
* URL
* API Key
* Access Token

* roleId

If-None-Match

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/associations/role/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "/associations/roles/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  },
  "name": "primaryUser",
  "label": "Primary User",
  "createdAt": "2018-02-01T13:07:01.375Z",
  "description": "The account owner has full control across the account.\n \nThere may be only one primary user. "
}

Responses

StatusDescription
200 OK
OK
Schema: role
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
404 Not Found
Not Found. There is no such role resource at the specified {roleId} The _error field in the response will contain details about the request error.
Schema: error

Response Headers

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

patchRole

Code samples

# You can also use wget
curl -X PATCH /associations/roles/{roleId} \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string'

PATCH /associations/roles/{roleId} 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: '/associations/roles/{roleId}',
  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/associations/role/v1.0.0/profile.json",
  "label": "primary user",
  "name": "primaryUser",
  "description": "The primary user for this account."
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string'

};

fetch('/associations/roles/{roleId}',
{
  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 '/associations/roles/{roleId}',
  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('/associations/roles/{roleId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("/associations/roles/{roleId}");
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", "/associations/roles/{roleId}", data)
    req.Header = headers

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

Update this role

PATCH /roles/{roleId}

Perform a partial update of this role. 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/associations/role/v1.0.0/profile.json",
  "label": "primary user",
  "name": "primaryUser",
  "description": "The primary user for this account."
}

Parameters

Parameter Description
roleId
(path)
string (required)
The unique identifier of this role. 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)
updateRole (required)

Try it

Fields marked with * are mandatory.

ParameterValue
MethodPATCH
* URL
* API Key
* Access Token

* roleId

If-Match

* body

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/associations/role/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "/associations/roles/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  },
  "name": "primaryUser",
  "label": "Primary User",
  "createdAt": "2018-02-01T13:07:01.375Z",
  "description": "The account owner has full control across the account.\n \nThere may be only one primary user. "
}

Responses

StatusDescription
200 OK
OK
Schema: role
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
404 Not Found
Not Found. There is no such role resource at the specified {roleId} The _error field in the response will contain details about the request error.
Schema: error
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

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

updateRole

Code samples

# You can also use wget
curl -X PUT /associations/roles/{roleId} \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string'

PUT /associations/roles/{roleId} 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: '/associations/roles/{roleId}',
  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/associations/role/v1.0.0/profile.json",
  "label": "primary user",
  "name": "primaryUser",
  "description": "The primary user for this account."
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string'

};

fetch('/associations/roles/{roleId}',
{
  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 '/associations/roles/{roleId}',
  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('/associations/roles/{roleId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("/associations/roles/{roleId}");
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", "/associations/roles/{roleId}", data)
    req.Header = headers

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

Update this role

PUT /roles/{roleId}

Perform a complete replacement of this role.

Body parameter

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
  "label": "primary user",
  "name": "primaryUser",
  "description": "The primary user for this account."
}

Parameters

Parameter Description
roleId
(path)
string (required)
The unique identifier of this role. 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)
updateRole (required)

Try it

Fields marked with * are mandatory.

ParameterValue
MethodPUT
* URL
* API Key
* Access Token

* roleId

If-Match

* body

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/associations/role/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "/associations/roles/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  },
  "name": "primaryUser",
  "label": "Primary User",
  "createdAt": "2018-02-01T13:07:01.375Z",
  "description": "The account owner has full control across the account.\n \nThere may be only one primary user. "
}

Responses

StatusDescription
200 OK
OK
Schema: role
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
404 Not Found
Not Found. There is no such role resource at the specified {roleId} The _error field in the response will contain details about the request error.
Schema: error
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

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

deleteRole

Code samples

# You can also use wget
curl -X DELETE /associations/roles/{roleId}

DELETE /associations/roles/{roleId} HTTP/1.1


$.ajax({
  url: '/associations/roles/{roleId}',
  method: 'delete',

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

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

fetch('/associations/roles/{roleId}',
{
  method: 'DELETE'

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

require 'rest-client'
require 'json'

result = RestClient.delete '/associations/roles/{roleId}',
  params: {
  }

p JSON.parse(result)

import requests

r = requests.delete('/associations/roles/{roleId}', params={

)

print r.json()

URL obj = new URL("/associations/roles/{roleId}");
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() {

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "/associations/roles/{roleId}", data)
    req.Header = headers

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

Delete this role resource

DELETE /roles/{roleId}

Delete this role resource and any resources that are owned by it. A role cannot be deleted if it is in use in an association.

Parameters

Parameter Description
roleId
(path)
string (required)
The unique identifier of this role. This is an opaque string.

Try it

Fields marked with * are mandatory.

ParameterValue
MethodDELETE
* URL
* API Key
* Access Token

* roleId

Response

Response Code:

Response Headers:

Response Body:

    
      Click on 'Try It' to get a response.
    
  

Responses

StatusDescription
204 No Content
No Content. The resource was deleted successfully.

Schemas

association

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "http://api.apiture.com/schemas/associations/association/v1.0.0/profile.json",
  "_links": {
    "apiture:role": {
      "href": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd"
    },
    "apiture:source": {
      "href": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed"
    },
    "apiture:target": {
      "href": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed"
    }
  },
  "sourceUri": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "roleUri": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd",
  "roleName": "primaryUser",
  "targetUri": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "_embedded": {
    "source": {
      "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
      "_profile": "http://api.apiture.com/schemas/accounts/v1.0.0/profile.json",
      "type": "account",
      "name": "Personal Checking",
      "TODO": "Refine this example when Accounts API is defined."
    },
    "role": {
      "_id": "c83790c9-8bcb-4754-a989-7a45342697cb",
      "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
      "name": "primaryUser",
      "label": "Primary User",
      "description": "The account owner has full control across the account. For personal accounts, the primary user is also known as the account owner. For organization accounts, the organization is the \"owner\"; the primary user is the person who is granted administration permissions on the account, which includes managing permissions and roles of other users associated with the account.\nThere may be only one primary user."
    },
    "target": {
      "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
      "_profile": "http://api.apiture.com/schemas/user/v1.0.0/profile.json",
      "type": "user",
      "firstName": "Bobette",
      "middleName": "",
      "lastName": "Wellphunded",
      "TODO": "Refine this example when Users API is defined."
    }
  }
}

Association

Properties

Schema NameDescription
Association any
Representation of an association between two resources. When used to create a new association, the request must contain links to the elements of the association: a role (apiture:role) a source resource (apiture:source) and a target resource (apiture:target). In many cases, the target resource is a person or user; a source or target may be any resource.

allOf

Schema NameDescription
anonymous updateAssociation
Representation used to update or patch an association.

and

Schema NameDescription
anonymous object
undefined
createdAt string(date-time)
The date-time when the association was created. This is in ISO 8601 format, UTC. This is derived and immutable.
read-only
_embedded object
The objects which participate in this association
source object
The source resource for this association.
role role
The role for this association
target object
The target resource for this association.

updateAssociation

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "http://api.apiture.com/schemas/associations/associations/v1.0.0/profile.json"
}

Update Association

Properties

Schema NameDescription
Update Association any
Representation used to update or patch an association.

allOf

Schema NameDescription
anonymous associationFields
Core fields of the association resource used to build other model schema.

and

Schema NameDescription
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 NameDescription
anonymous object
undefined
_id string
The unique identifier for this association resource. This is an immutable opaque string.

summaryAssociation

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "http://api.apiture.com/schemas/associations/associations/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "/associations/associations/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Association Summary

Properties

Schema NameDescription
Association Summary any
Summary representation of an association resource in associations collections.

allOf

Schema NameDescription
anonymous createAssociation
Representation used to create a new association.

and

Schema NameDescription
anonymous object
undefined
_id string
The unique identifier for this association resource. This is an immutable opaque string.

createAssociation

{
  "sourceUri": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "roleUri": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd",
  "roleName": "primaryUser",
  "targetUri": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "_profile": "http://api.apiture.com/schemas/example/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "{uri of current resource}"
    }
  }
}

Create Association

Properties

allOf

Schema NameDescription
anonymous associationFields
Core fields of the association resource used to build other model schema.

and

Schema NameDescription
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.

associationFields

{
  "sourceUri": "/accounts/accounts/540f4849-0df4-4fbc-b987-6ad1f29998ed",
  "roleUri": "/associations/roles/e4f09b4d-eba6-46da-86d3-ba28595067cd",
  "roleName": "primaryUser",
  "targetUri": "/users/users/540f4849-0df4-4fbc-b987-6ad1f29998ed"
}

Association Fields

Properties

Schema NameDescription
sourceUri string
The URI of association source resource.
roleUri string
The URI of association role resource.
roleName string
The name of the role used to associate two resources. This is a derived value and is ignored on updates.
targetUri string
The URI of association target resource.
attributes attributes
Data attribute associated with the error, such as values or constraints.

collection

{
  "_profile": "http://api.apiture.com/schemas/example/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "{uri of current resource}"
    }
  },
  "count": 0,
  "start": 0,
  "limit": 0,
  "name": "string"
}

Collection

Properties

Schema NameDescription
Collection any
A collection of resources.

allOf

Schema NameDescription
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 NameDescription
anonymous object
undefined
count integer
The total number of items in the 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.

associations

{
  "_profile": "http://api.apiture.com/schemas/collection/accounts/association/v1.0.0/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "associations",
  "_links": {
    "self": {
      "href": "/associations/associations?start=10&limit=10"
    },
    "first": {
      "href": "/associations/associations?start=0&limit=10"
    },
    "next": {
      "href": "/associations/associations?start=20&limit=10"
    },
    "collection": {
      "href": "/associations/associations"
    }
  },
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "http://api.apiture.com/schemas/associations/association/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "/associations/associations/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        },
        "roleName": "primaryUser",
        "_embedded": {
          "role": {
            "_id": "c83790c9-8bcb-4754-a989-7a45342697cb",
            "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
            "name": "primaryUser",
            "label": "primaryUser",
            "description": "The account owner has full control across the account. For personal accounts, the orimary user is also known as the account owner. For organization accounts, the organization is the \"owner\"; the primary user is the person who is granted administration permissions on the account, which includes managing permissions and roles of other users associated with the account.\nThere may be only one primary user."
          },
          "target": {
            "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
            "_profile": "http://api.apiture.com/schemas/user/v1.0.0/profile.json",
            "type": "user",
            "firstName": "Bobette",
            "middleName": "",
            "lastName": "Wellphunded"
          },
          "source": {
            "_id": "4222e6e8-bd85-487e-8864-ec16a0b0d058",
            "_profile": "http://api.apiture.com/schemas/accounts/v1.0.0/profile.json",
            "type": "account",
            "name": "Personal Checking"
          }
        }
      }
    ]
  }
}

Association Collection

Properties

Schema NameDescription
Association Collection any
Collection of associations. The items in the collection are ordered in the _embedded object with name items. The top-level _links object may contain pagination links (self, next, prev, first, last, collection.)

allOf

Schema NameDescription
anonymous collection
A collection of resources.

and

Schema NameDescription
anonymous object
undefined
_embedded object
undefined
items [summaryAssociation]
An array containing a page of association items.

roleFields

{
  "name": "primaryUser",
  "label": "Primary User",
  "description": "The primary user on the account.\nThere may be only one primary user on an account."
}

Role Fields

Properties

Schema NameDescription
name string
The name of this role, for identification purposes, such as primaryOwner, beneficiary, authorizedSigner. Some roles have well-known uses in the platform.
minLength: 1
maxLength: 128
label string
The text label for this role, for use in human presentation. This field may be localized.
minLength: 1
maxLength: 128
description string
A fuller description of this role. This field may be localized.
minLength: 1
maxLength: 4096

summaryRole

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
  "name": "primaryUser",
  "label": "Primary User",
  "description": "The primary user on the account.\nThere may be only one primary user on an account.",
  "_links": {
    "self": {
      "href": "/associations/roles/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  }
}

Role Summary

Properties

Schema NameDescription
Role Summary any
Summary representation of a role resource in roles 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 NameDescription
anonymous createRole
Representation used to create a new role.

and

Schema NameDescription
anonymous object
undefined
_id string
The unique identifier for this role resource. This is an immutable opaque string.

createRole

{
  "name": "primaryUser",
  "label": "Primary User",
  "description": "The primary user on the account.\nThere may be only one primary user on an account.",
  "_profile": "http://api.apiture.com/schemas/example/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "{uri of current resource}"
    }
  }
}

Create Role

Properties

allOf

Schema NameDescription
anonymous roleFields
Core fields of the role resource used to build other model schema.

and

Schema NameDescription
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.

updateRole

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
  "label": "primary user",
  "name": "primaryUser",
  "description": "The primary user for this account."
}

Update Role

Properties

Schema NameDescription
Update Role summaryRole
Representation used to update or patch a role.

role

{
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "/associations/roles/0399abed-fd3d-4830-a88b-30f38b8a365c"
    }
  },
  "name": "primaryUser",
  "label": "Primary User",
  "createdAt": "2018-02-01T13:07:01.375Z",
  "description": "The account owner has full control across the account.\n \nThere may be only one primary user. "
}

Role

Properties

Schema NameDescription
Role any
Representation of a role resource. Roles are used to associate resources. The most common roles may be related to entitlements(users) but can also be applied to organizations or non-users (such as beneficiaries, payees, etc.)

allOf

Schema NameDescription
anonymous updateRole
Representation used to update or patch a role.

and

Schema NameDescription
anonymous object
undefined
createdAt string(date-time)
The date-time when the role was created. This is in ISO 8601 format, UTC. This is derived and immutable.
read-only

roles

{
  "_profile": "http://api.apiture.com/schemas/collection/role/v1.0.0/profile.json",
  "start": 10,
  "limit": 10,
  "count": 67,
  "name": "roles",
  "_links": {
    "self": {
      "href": "/associations/roles?start=10&limit=10"
    },
    "first": {
      "href": "/associations/roles?start=0&limit=10"
    },
    "next": {
      "href": "/associations/roles?start=20&limit=10"
    },
    "collection": {
      "href": "/associations/roles"
    }
  },
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
        "name": "primaryUser",
        "label": "Primary User",
        "description": "The primary user on the account.\nThere may be only one primary user on an account.",
        "_links": {
          "self": {
            "href": "/associations/roles/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        }
      },
      {
        "_id": "1e0c734d-f0e7-4204-942d-222a860eed03",
        "_profile": "http://api.apiture.com/schemas/associations/role/v1.0.0/profile.json",
        "name": "beneficiary",
        "label": "Beneficiary",
        "description": "An account beneficiary.",
        "_links": {
          "self": {
            "href": "/associations/roles/1e0c734d-f0e7-4204-942d-222a860eed03"
          }
        }
      }
    ]
  }
}

Role Collection

Properties

Schema NameDescription
Role Collection any
Collection of roles. The items in the collection are ordered in the _embedded object with name items. The top-level _links object may contain pagination links (self, next, prev, first, last, collection.)

allOf

Schema NameDescription
anonymous collection
A collection of resources.

and

Schema NameDescription
anonymous object
undefined
_embedded object
undefined
items [summaryRole]
An array containing a page of role items.

abstractResource

{
  "_profile": "http://api.apiture.com/schemas/example/v1.0.0/profile.json",
  "_links": {
    "self": {
      "href": "{uri of current resource}"
    }
  }
}

Abstract Resource

Properties

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

root

{
  "id": "apiName",
  "name": "API name",
  "apiVersion": "0.0.1-SNAPSHOT",
  "_profile": "https://api.apiture.com/schemas/apiRoot/v1.0.0/profile.json",
  "_links": {}
}

API Root

Properties

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

allOf

Schema NameDescription
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 NameDescription
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/.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.587Z",
    "_links": {
      "describedby": {
        "href": "http://doc.apiture.com/errors/positiveNumberRequired"
      }
    },
    "_embedded": {
      "errors": []
    }
  }
}

Error Response

Properties

Schema NameDescription
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 NameDescription
message string (required)
A localized message string describing the error condition.
_id string
A unique identifier for this error instance. This may be used as a correlation ID with the root cause error (i.e. this ID may be logged at the source of the error). This is is an opaque string.
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

{
  "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 NameDescription
additionalProperties link
Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property.

{
  "href": "http://example.com",
  "type": "string",
  "templated": true,
  "title": "string",
  "deprecation": "http://example.com",
  "profile": "http://example.com"
}

Link

Properties

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