Shell HTTP Node.JS JavaScript Ruby Python Java Go

API Products v0.16.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.

An API to manage API products (built on the Apiture stack) associated with a dev portal. An API product is a collection of one or more APIs/services. Client applications are associated with one or more API products. An API product consists of

A product also has a type of pure api product or a uiComponent product. A UI component is a web/mobile component that uses Apiture APIs. product lines cannot be mixed (a product's elements must come from the same product line.) An product also returns the list of authorization scopes. This may only be support for the adb product line. Upon creation, an API product is in a pending state. It must be activated before it can be selected for use by an application; see the activateApiProduct operation.

Download OpenAPI Definition (YAML)

Base URLs:

Terms of service

Email: Apiture Web: Apiture

Authentication

Scope Scope Description
admin/write Write (update) access to API products.
admin/delete Delete access to API products.
admin/full Full access to API products.

API

Endpoints which describe this API.

getApi

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/apiProducts/ \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY'

GET https://api.devbank.apiture.com/apiProducts/ HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json

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

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

};

fetch('https://api.devbank.apiture.com/apiProducts/',
{
  method: 'GET',

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

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/apiProducts/',
  method: 'get',

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

require 'rest-client'
require 'json'

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

result = RestClient.get 'https://api.devbank.apiture.com/apiProducts/',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.get('https://api.devbank.apiture.com/apiProducts/', params={

}, headers = headers)

print r.json()

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

package main

import (
       "bytes"
       "net/http"
)

func main() {

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

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/apiProducts/", data)
    req.Header = headers

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

Top-level resources and operations in this API

GET https://api.devbank.apiture.com/apiProducts/

Return links to the top-level resources and operations in this API.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/common/root/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "id": "apiName",
  "name": "API name",
  "apiVersion": "1.0.0"
}

Responses

StatusDescription
200 OK
OK.
Schema: root

getApiDoc

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/apiProducts/apiDoc \
  -H 'Accept: application/json' \
  -H 'API-Key: API_KEY'

GET https://api.devbank.apiture.com/apiProducts/apiDoc HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/json

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

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

};

fetch('https://api.devbank.apiture.com/apiProducts/apiDoc',
{
  method: 'GET',

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

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/apiProducts/apiDoc',
  method: 'get',

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

require 'rest-client'
require 'json'

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

result = RestClient.get 'https://api.devbank.apiture.com/apiProducts/apiDoc',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.get('https://api.devbank.apiture.com/apiProducts/apiDoc', params={

}, headers = headers)

print r.json()

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

package main

import (
       "bytes"
       "net/http"
)

func main() {

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

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/apiProducts/apiDoc", data)
    req.Header = headers

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

Return API definition document

GET https://api.devbank.apiture.com/apiProducts/apiDoc

Return the OpenAPI document that describes this API.

Example responses

200 Response

{}

Responses

StatusDescription
200 OK
OK.
Schema: Inline

Response Schema

API Product

API Products

getApiProducts

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/apiProducts/products \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY'

GET https://api.devbank.apiture.com/apiProducts/products HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json

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

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

};

fetch('https://api.devbank.apiture.com/apiProducts/products',
{
  method: 'GET',

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

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/apiProducts/products',
  method: 'get',

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

require 'rest-client'
require 'json'

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

result = RestClient.get 'https://api.devbank.apiture.com/apiProducts/products',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.get('https://api.devbank.apiture.com/apiProducts/products', params={

}, headers = headers)

print r.json()

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

package main

import (
       "bytes"
       "net/http"
)

func main() {

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

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/apiProducts/products", data)
    req.Header = headers

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

Return a collection of API products

GET https://api.devbank.apiture.com/apiProducts/products

Return a paginated filterable collection of API products. The links in the response include pagination links.

Parameters

ParameterDescription
start string
Represents the first record of the page of results. This is supplied by the service when paginating items: the next link includes a ?start= query parameter which refers to beginning of the next page of items.
limit integer(int32)
The maximum number of API product representations to return in this page.
Default: 100
filter string
Optional filter criteria. See filtering.
state array[string]
Subset the resources to only those whose state matches the query, such as ?state=active. The value may be a | separated list of states, such as ?state=pending|active to match all resources whose state is either pending or active. If ?filter= is also used, the two are combined with an implicit and() operation.
pipe-delimited
items:
» enum values: pending, active, inactive
productLine productLine
Subset the resources to only those whose productLine matches the query.
Default: "open"
enum values: open, adb

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/products/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "/apiProducts/products?start=g434ljkf430&limit=10"
    },
    "next": {
      "href": "/apiProducts/products?start=p4900sk3df9&limit=10"
    },
    "collection": {
      "href": "/apiProducts/products"
    }
  },
  "start": "g434ljkf430",
  "limit": 10,
  "name": "apiProducts",
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://production.api.apiture.com/schemas/apiProducts/apiProduct/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "/apiProducts/products/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        }
      },
      {
        "_id": "d62c0701-0d74-4836-83f9-ebf3709442ea",
        "_profile": "https://production.api.apiture.com/schemas/apiProducts/apiProduct/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "/apiProducts/products/d62c0701-0d74-4836-83f9-ebf3709442ea"
          }
        }
      }
    ]
  }
}

Responses

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

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

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

Schema: errorResponse

createApiProduct

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/apiProducts/products \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/apiProducts/products HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/apiProducts/products',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/apiProducts/products',
  method: 'post',

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

require 'rest-client'
require 'json'

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

result = RestClient.post 'https://api.devbank.apiture.com/apiProducts/products',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.post('https://api.devbank.apiture.com/apiProducts/products', params={

}, headers = headers)

print r.json()

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

package main

import (
       "bytes"
       "net/http"
)

func main() {

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

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/apiProducts/products", data)
    req.Header = headers

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

Create a new API product

POST https://api.devbank.apiture.com/apiProducts/products

Create a new API product in the API products collection. The tag is required and must be unique. Upon creation, an API product is in a pending state. It must be activated before it can be selected for use by an application; see the activateApiProduct operation.

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}

Parameters

ParameterDescription
body product (required)
The data necessary to create a new API product.

Example responses

201 Response

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}

Responses

StatusDescription
201 Created
Created.
Schema: product
HeaderLocation
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
HeaderETag
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.
StatusDescription
400 Bad Request

Bad Request. One of the request parameters to create a productType was not valid. See the _error object in the response for more information.

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. An API product already exists with specified tag.

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

Schema: errorResponse
StatusDescription
422 Unprocessable Entity

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

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

Schema: errorResponse

getApiProduct

Code samples

# You can also use wget
curl -X GET https://api.devbank.apiture.com/apiProducts/products/{productId} \
  -H 'Accept: application/hal+json' \
  -H 'If-None-Match: string' \
  -H 'API-Key: API_KEY'

GET https://api.devbank.apiture.com/apiProducts/products/{productId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-None-Match: string

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

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

};

fetch('https://api.devbank.apiture.com/apiProducts/products/{productId}',
{
  method: 'GET',

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

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/apiProducts/products/{productId}',
  method: 'get',

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

require 'rest-client'
require 'json'

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

result = RestClient.get 'https://api.devbank.apiture.com/apiProducts/products/{productId}',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.get('https://api.devbank.apiture.com/apiProducts/products/{productId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/apiProducts/products/{productId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

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

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.devbank.apiture.com/apiProducts/products/{productId}", data)
    req.Header = headers

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

Fetch a representation of this API product

GET https://api.devbank.apiture.com/apiProducts/products/{productId}

Return a HAL representation of this API product resource.

Parameters

ParameterDescription
productId string (required)
The unique identifier of this API product. This is an opaque string.
If-None-Match 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.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}

Responses

StatusDescription
200 OK
OK.
Schema: product
HeaderETag
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 API product resource.
StatusDescription
304 Not Modified
Not Modified. The resource has not been modified since it was last fetched.
StatusDescription
404 Not Found

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

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

Schema: errorResponse

updateApiProduct

Code samples

# You can also use wget
curl -X PUT https://api.devbank.apiture.com/apiProducts/products/{productId} \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PUT https://api.devbank.apiture.com/apiProducts/products/{productId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/apiProducts/products/{productId}',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/apiProducts/products/{productId}',
  method: 'put',

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

require 'rest-client'
require 'json'

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

result = RestClient.put 'https://api.devbank.apiture.com/apiProducts/products/{productId}',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.put('https://api.devbank.apiture.com/apiProducts/products/{productId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/apiProducts/products/{productId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

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

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "https://api.devbank.apiture.com/apiProducts/products/{productId}", data)
    req.Header = headers

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

Update this API product

PUT https://api.devbank.apiture.com/apiProducts/products/{productId}

Perform a complete replacement of this API product.

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}

Parameters

ParameterDescription
productId string (required)
The unique identifier of this API product. This is an opaque string.
If-Match string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.
body product (required)
An API product.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}

Responses

StatusDescription
200 OK
OK.
Schema: product
HeaderETag
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 API product resource.
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response will contain details about the request error.
Schema: errorResponse
StatusDescription
404 Not Found

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

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse
StatusDescription
422 Unprocessable Entity

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

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

Schema: errorResponse

patchApiProduct

Code samples

# You can also use wget
curl -X PATCH https://api.devbank.apiture.com/apiProducts/products/{productId} \
  -H 'Content-Type: application/hal+json' \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

PATCH https://api.devbank.apiture.com/apiProducts/products/{productId} HTTP/1.1
Host: api.devbank.apiture.com
Content-Type: application/hal+json
Accept: application/hal+json
If-Match: string

const fetch = require('node-fetch');
const inputBody = '{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}';
const headers = {
  'Content-Type':'application/hal+json',
  'Accept':'application/hal+json',
  'If-Match':'string',
  'API-Key':'API_KEY',
  'Authorization':'Bearer {access-token}'

};

fetch('https://api.devbank.apiture.com/apiProducts/products/{productId}',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/apiProducts/products/{productId}',
  method: 'patch',

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

require 'rest-client'
require 'json'

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

result = RestClient.patch 'https://api.devbank.apiture.com/apiProducts/products/{productId}',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.patch('https://api.devbank.apiture.com/apiProducts/products/{productId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/apiProducts/products/{productId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

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

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "https://api.devbank.apiture.com/apiProducts/products/{productId}", data)
    req.Header = headers

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

Update this API product

PATCH https://api.devbank.apiture.com/apiProducts/products/{productId}

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

Body parameter

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}

Parameters

ParameterDescription
productId string (required)
The unique identifier of this API product. This is an opaque string.
If-Match string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.
body product (required)
An API product.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}

Responses

StatusDescription
200 OK
OK.
Schema: product
HeaderETag
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 API product resource.
StatusDescription
400 Bad Request
Bad Request. The request body or one or more of the query parameters was not well formed. The _error field in the response will contain details about the request error.
Schema: errorResponse
StatusDescription
404 Not Found

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

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

Schema: errorResponse
StatusDescription
412 Precondition Failed
Precondition Failed. The supplied if-Match header value does not match the most recent ETag response header value. The resource has changed in the interim.
Schema: errorResponse
StatusDescription
422 Unprocessable Entity

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

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

Schema: errorResponse

deleteApiProduct

Code samples

# You can also use wget
curl -X DELETE https://api.devbank.apiture.com/apiProducts/products/{productId} \
  -H 'Accept: application/hal+json' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

DELETE https://api.devbank.apiture.com/apiProducts/products/{productId} HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json

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

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

};

fetch('https://api.devbank.apiture.com/apiProducts/products/{productId}',
{
  method: 'DELETE',

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

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/apiProducts/products/{productId}',
  method: 'delete',

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

require 'rest-client'
require 'json'

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

result = RestClient.delete 'https://api.devbank.apiture.com/apiProducts/products/{productId}',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.delete('https://api.devbank.apiture.com/apiProducts/products/{productId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/apiProducts/products/{productId}");
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"},
        "API-Key": []string{"API_KEY"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "https://api.devbank.apiture.com/apiProducts/products/{productId}", data)
    req.Header = headers

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

Delete this API product resource

DELETE https://api.devbank.apiture.com/apiProducts/products/{productId}

Delete this API product resource and any resources that are owned by it. A product must be inactive before it may be deleted.

Parameters

ParameterDescription
productId string (required)
The unique identifier of this API product. This is an opaque string.

Example responses

409 Response

{
  "_profile": "https://production.api.apiture.com/schemas/common/errorResponse/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_error": {
    "_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
    "message": "Description of the error will appear here.",
    "statusCode": 422,
    "type": "specificErrorType",
    "attributes": {
      "value": "Optional attribute describing the error"
    },
    "remediation": "Optional instructions to remediate the error may appear here.",
    "occurredAt": "2018-01-25T05:50:52.375Z",
    "_links": {
      "describedby": {
        "href": "https://production.api.apiture.com/errors/specificErrorType"
      }
    },
    "_embedded": {
      "errors": []
    }
  }
}

Responses

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

Conflict. The product may not be deleted if the state is inactive.

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

Schema: errorResponse

API Product States

API Product States

deactivateApiProduct

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/apiProducts/inactiveProducts?product=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/apiProducts/inactiveProducts?product=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-Match: string

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

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

};

fetch('https://api.devbank.apiture.com/apiProducts/inactiveProducts?product=string',
{
  method: 'POST',

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

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/apiProducts/inactiveProducts',
  method: 'post',
  data: '?product=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

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

result = RestClient.post 'https://api.devbank.apiture.com/apiProducts/inactiveProducts',
  params: {
  'product' => 'string'
}, headers: headers

p JSON.parse(result)

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

r = requests.post('https://api.devbank.apiture.com/apiProducts/inactiveProducts', params={
  'product': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/apiProducts/inactiveProducts?product=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

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

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/apiProducts/inactiveProducts", data)
    req.Header = headers

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

Deactivate an API product

POST https://api.devbank.apiture.com/apiProducts/inactiveProducts

Inactivate an API product. This changes the state property of the API product to inactive. This operation is available via the apiture:deactivate link on the api product resource, if and only if the API product is eligible for the deactivate operation. A product may not be deactivated if it is in use by any other product or client applications, unless the ?force=true option is used.

The responses is the updated representation of the API product. The If-Match request header value, if used, must match the current entity tag value of the API product.

Parameters

ParameterDescription
product string (required)
A string which uniquely identifies an API product which is to added to the active API products resource set. This may be the unique API product ID or the URI of the API product.
force boolean
Force deactivation of the product, even if client applications are using the product. This is false by default.
If-Match string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. The API product was updated and its state changed to inactive.
Schema: product
HeaderETag
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.
StatusDescription
400 Bad Request

Bad Request. The apiProduct parameter was malformed or does not refer to an existing or accessible API product.

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

Schema: errorResponse
StatusDescription
409 Conflict

Conflict. The request to change the state of the API product is not allowed. Examples include when a product is in use by another product or the product is used by an active client application. The _error field in the response will contain details about the request error.

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

Schema: errorResponse

activateApiProduct

Code samples

# You can also use wget
curl -X POST https://api.devbank.apiture.com/apiProducts/activeProducts?product=string \
  -H 'Accept: application/hal+json' \
  -H 'If-Match: string' \
  -H 'API-Key: API_KEY' \
  -H 'Authorization: Bearer {access-token}'

POST https://api.devbank.apiture.com/apiProducts/activeProducts?product=string HTTP/1.1
Host: api.devbank.apiture.com
Accept: application/hal+json
If-Match: string

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

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

};

fetch('https://api.devbank.apiture.com/apiProducts/activeProducts?product=string',
{
  method: 'POST',

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

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

};

$.ajax({
  url: 'https://api.devbank.apiture.com/apiProducts/activeProducts',
  method: 'post',
  data: '?product=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})

require 'rest-client'
require 'json'

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

result = RestClient.post 'https://api.devbank.apiture.com/apiProducts/activeProducts',
  params: {
  'product' => 'string'
}, headers: headers

p JSON.parse(result)

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

r = requests.post('https://api.devbank.apiture.com/apiProducts/activeProducts', params={
  'product': 'string'
}, headers = headers)

print r.json()

URL obj = new URL("https://api.devbank.apiture.com/apiProducts/activeProducts?product=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

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

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.devbank.apiture.com/apiProducts/activeProducts", data)
    req.Header = headers

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

Activate an API product

POST https://api.devbank.apiture.com/apiProducts/activeProducts

Update an API product by adding it to the set of active API products. This changes the state property of the API product to active. This operation is available via the apiture:activate link on the api product resource, if and only if the API product is eligible for the activate operation. The responses is the updated representation of the API product. The If-Match required request header value must match the current entity tag value of the API product.

Parameters

ParameterDescription
product string (required)
A string which uniquely identifies an API product which is to added to the active API products resource set. This may be the unique API product ID or the URI of the API product.
If-Match string
The entity tag that was returned in the ETag response. If passed, this must match the current entity tag of the resource.

Example responses

200 Response

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}

Responses

StatusDescription
200 OK
OK. The operation succeeded. The API product was updated and its state changed to active.
Schema: product
HeaderETag
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.
StatusDescription
400 Bad Request

Bad Request. The apiProduct parameter was malformed or does not refer to an existing or accessible API product.

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

Schema: errorResponse
StatusDescription
409 Conflict
Conflict. The request to change the state of the API product is not allowed. The _error field in the response will contain details about the request error.
Schema: errorResponse

Schemas

abstractRequest

{
  "_profile": "https://production.api.apiture.com/schemas/common/abstractRequest/v2.0.0/profile.json",
  "_links": {}
}

Abstract Request (v2.0.0)

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

This schema was resolved from common/abstractRequest.

Properties

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

This schema was resolved from common/links.

_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.
read-only

abstractResource

{
  "_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  }
}

Abstract Resource (v2.1.0)

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

This schema was resolved from common/abstractResource.

Properties

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

This schema was resolved from common/links.

_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.
read-only
_error object: error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only

api

{
  "name": "Accounts",
  "basePath": "/accounts",
  "description": "Access internal accounts and account details (balances, etc.) at a financial institution, as well as linked external accounts",
  "productLine": "open",
  "scopes": [
    {
      "name": "banking/read",
      "description": "Read access to banking data and resources related to customer's accounts."
    },
    {
      "name": "moneyMovement/write",
      "description": "Create and write access to move money to and from customer's accounts."
    }
  ]
}

API (v1.1.0)

An API is a component of an API product.

Properties

NameDescription
name string
The name of the API product.
minLength: 6
maxLength: 64
description string(markdown)
The description of the API product.
basePath string
The base path of the API (from the basePath in the OpenAPI definition).
minLength: 4
maxLength: 32
version string(semantic-version)
The semantic version of the API (from the info.version in the OpenAPI definition).
productLine string: productLine

The product line, for separating Open APIs and products from ADB APIs and products.

productLine strings may have one of the following enumerated values:

ValueDescription
openopen:

Apiture Open

adbadb:

Apiture Digital Banking


Default: "open"
enum values: open, adb
scopes array: [authorizationScope]
The authorization scopes associated with this API product.
unique items

attributes

{}

Attributes (v2.1.0)

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

This schema was resolved from common/attributes.

Properties

authorizationScope

{
  "name": "string",
  "description": "string"
}

Authorization Scope (v1.0.0)

Authorization scope associated with an API or an API product.

Properties

NameDescription
name string: authorizationScopeName (required)
The name of an authorization scope associated with an API or an API product.
maxLength: 32
description string (required)
The description of the scope.
maxLength: 128

authorizationScopeName

"string"

Authorization Scope Name (v1.0.0)

The name of an authorization scope associated with an API or an API product.

Type: string
maxLength: 32

cursorPagedCollection

{
  "_profile": "https://production.api.apiture.com/schemas/common/abstractResource/v2.1.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  }
}

Cursor Paged Collection (v2.1.1)

A collection of resources, or a page from a larger collection. This is an abstract model schema which is extended to define specific resource collections. Pages are referenced using an opaque string starting point named start. The _links in the collection may contain pagination links:

Cursor paged collections can only paginate forwards contiguously (without skipping items or pages), or reset to the beginning of the collection. This pagination works for collections which are likely to change during pagination, such as adding data to the beginning of the collection's natural sort order. Examples include transactions or audit records.

This schema was resolved from common/cursorPagedCollection.

Properties

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

This schema was resolved from common/links.

_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.
read-only
_error object: error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
start string
An opaque marker representing the position of the current page in this resource collection. The service will use the start and limit to compute the ?start= query parameter for the next page when it provides the next link in the collection's _links.
limit integer
The maximum number of items per page.
name string
A name for the items in collection.

error

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

Error (v2.1.0)

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

This schema was resolved from common/error.

Properties

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

This schema was resolved from common/links.

errorResponse

{
  "_profile": "https://production.api.apiture.com/schemas/common/errorResponse/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "_error": {
    "_id": "2eae46e1-575c-4d69-8a8f-0a7b0115a4b3",
    "message": "Description of the error will appear here.",
    "statusCode": 422,
    "type": "specificErrorType",
    "attributes": {
      "value": "Optional attribute describing the error"
    },
    "remediation": "Optional instructions to remediate the error may appear here.",
    "occurredAt": "2018-01-25T05:50:52.375Z",
    "_links": {
      "describedby": {
        "href": "https://production.api.apiture.com/errors/specificErrorType"
      }
    },
    "_embedded": {
      "errors": []
    }
  }
}

Error Response (v2.1.1)

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

This schema was resolved from common/errorResponse.

Properties

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

This schema was resolved from common/links.

_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.
read-only
_error object: error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only

{
  "href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
  "title": "Application"
}

Link (v1.0.0)

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

This schema was resolved from common/link.

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

{
  "property1": {
    "href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
    "title": "Application"
  },
  "property2": {
    "href": "https://api.devbank.apiture.com/applications/application/328f6bf6-d762-422f-a077-ab91ca4d0b6f",
    "title": "Application"
  }
}

Links (v1.0.0)

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

This schema was resolved from common/links.

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

This schema was resolved from common/link.

product

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/product/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:activate": {
      "href": "https://api.developer.apiture.com/apiProducts/activeProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    },
    "apiture:deactivate": {
      "href": "https://api.developer.apiture.com/apiProducts/inactiveProducts?product=43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  },
  "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
  "tag": "digital-account-opening",
  "name": "Digital Account Opening",
  "description": "Supports opening accounts in a fully digital, self-service manner. Clients complete an application on-line, following full regulatory guidelines, to open a new account for a banking product, optionally funding the account from an outside funding source.",
  "version": "1.0.0",
  "apis": [
    {
      "name": "Banking Accounts",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Banking customer account management",
      "scopes": []
    },
    {
      "name": "transfers",
      "basePath": "/banking",
      "version": "1.0.0",
      "description": "Transfer funds between accounts.",
      "scopes": []
    }
  ],
  "products": [
    {
      "name": "Basic Banking",
      "_links": {
        "self": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
      }
    }
  ],
  "scopes": [],
  "excludeWriteScopes": true,
  "excludedScopes": []
}

API Product (v1.2.0)

API products, which are composed of APIs (with specific versions) and/or other API products.

Response and request bodies using this product schema may contain the following links:

RelSummaryMethod
apiture:deactivateDeactivate an API productPOST
apiture:activateActivate an API productPOST

Properties

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

This schema was resolved from common/links.

_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.
read-only
_error object: error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
_id string
This API product's unique ID.
read-only
name string
The name of the API product.
minLength: 6
maxLength: 64
tag string
A unique read-only alphanumeric identifier for this product. When combined with the version, this creates a unique, immutable, durable, and human-readable identifier for this product.
read-only
minLength: 6
maxLength: 64
pattern: [a-z][-_a-z0-9A-Z]{0,63}
productLine string: productLine
The product line of this API product, derived from the product line of this product's apis and products.
read-only
Default: "open"
enum values: open, adb
type string: productType

The type of product, either an API product or a UI Component product.

productType strings may have one of the following enumerated values:

ValueDescription
apiAPI:

The product contains only APIs and/or other API products

componentComponent:

The prodcut contains APIs and/or other API or Component products


enum values: api, component
description string(markdown)
The description of the client application.
maxLength: 512
version string(semantic-version)
The semantic version of the product.
state string: productState

The state of this API product. The default state is pending. The product must be activated in order for an application to use the product. Use the POST HTTP method on the corresponding activateApiProduct and `deactivateApiProduct to activate or deactivate the API product.

productState strings may have one of the following enumerated values:

ValueDescription
pendingPending:

A new API product that has not been activated

activeactive:

An active API product

inactiveinactive:

An inactive API product, not used by any API client applications


enum values: pending, active, inactive
products array: [productRef]
An array of products that this composite product contains. Some products are made as assemblies of other products.
apis array: [api]
Specific APIs that are elements of this product.
scopes array: [authorizationScope]

The authorization scopes associated with this API product. This is derived from the union of the scopes in the nested apis and products, then

  1. removing any excludedScopes
  2. removing any */write scopes if excludedWriteScopes is true.

read-only
unique items
excludedWriteScopes boolean
If true, automatically exclude all */write scopes inherited from this product's apis and products when deriving this product's scopes.
excludedScopes array: [authorizationScopeName]
Exclude these (inherited) scopes from this product's set of scopes when deriving this product's scopes.
unique items

productLine

"open"

Product Line (v1.0.0)

The product line, for separating Open APIs and products from ADB APIs and products.

productLine strings may have one of the following enumerated values:

ValueDescription
openopen:

Apiture Open

adbadb:

Apiture Digital Banking

Type: string
Default: "open"
enum values: open, adb

productRef

{
  "name": "Basic Banking",
  "version": "1.2.5",
  "_links": {
    "self": {
      "href": "https://api.developer.apiture.com/apiProducts/products/43f271c2-190a-45e1-b332-bdf0b11a92bb"
    }
  }
}

Product Reference (v1.0.1)

A concise reference to an API product.

Properties

NameDescription
name string (required)
The name of the API product.
read-only
minLength: 6
maxLength: 64
version string(semantic-version) (required)
The semantic version of the product.
read-only
_links object: links (required)
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.

This schema was resolved from common/links.

productState

"pending"

Product State (v1.0.0)

The state of this API product. The default state is pending. The product must be activated in order for an application to use the product. Use the POST HTTP method on the corresponding activateApiProduct and `deactivateApiProduct to activate or deactivate the API product.

productState strings may have one of the following enumerated values:

ValueDescription
pendingPending:

A new API product that has not been activated

activeactive:

An active API product

inactiveinactive:

An inactive API product, not used by any API client applications

Type: string
enum values: pending, active, inactive

productType

"api"

Product Type (v1.0.0)

The type of product, either an API product or a UI Component product.

productType strings may have one of the following enumerated values:

ValueDescription
apiAPI:

The product contains only APIs and/or other API products

componentComponent:

The prodcut contains APIs and/or other API or Component products

Type: string
enum values: api, component

products

{
  "_profile": "https://production.api.apiture.com/schemas/apiProducts/products/v1.2.0/profile.json",
  "_links": {
    "self": {
      "href": "/apiProducts/products?start=g434ljkf430&limit=10"
    },
    "next": {
      "href": "/apiProducts/products?start=p4900sk3df9&limit=10"
    },
    "collection": {
      "href": "/apiProducts/products"
    }
  },
  "start": "g434ljkf430",
  "limit": 10,
  "name": "apiProducts",
  "_embedded": {
    "items": [
      {
        "_id": "0399abed-fd3d-4830-a88b-30f38b8a365c",
        "_profile": "https://production.api.apiture.com/schemas/apiProducts/apiProduct/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "/apiProducts/products/0399abed-fd3d-4830-a88b-30f38b8a365c"
          }
        }
      },
      {
        "_id": "d62c0701-0d74-4836-83f9-ebf3709442ea",
        "_profile": "https://production.api.apiture.com/schemas/apiProducts/apiProduct/v1.0.0/profile.json",
        "_links": {
          "self": {
            "href": "/apiProducts/products/d62c0701-0d74-4836-83f9-ebf3709442ea"
          }
        }
      }
    ]
  }
}

API Product Collection (v1.2.0)

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

Properties

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

This schema was resolved from common/links.

_embedded object
Embedded resources.
ยป items array: [product]
An array containing a page of API product items.
_profile string(uri)
The URI of a resource profile which describes the representation.
read-only
_error object: error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
start string
An opaque marker representing the position of the current page in this resource collection. The service will use the start and limit to compute the ?start= query parameter for the next page when it provides the next link in the collection's _links.
limit integer
The maximum number of items per page.
name string
A name for the items in collection.

root

{
  "_profile": "https://production.api.apiture.com/schemas/common/root/v2.1.1/profile.json",
  "_links": {
    "self": {
      "href": "https://api.devbank.apiture.com/apiName/resourceName/resourceId"
    }
  },
  "id": "apiName",
  "name": "API name",
  "apiVersion": "1.0.0"
}

API Root (v2.1.1)

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

This schema was resolved from common/root.

Properties

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

This schema was resolved from common/links.

_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.
read-only
_error object: error
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only
_id string
This API's unique ID.
read-only
name string
This API's name.
apiVersion string
This API's version.