Apiture OIDC Provider - Clients v1.0.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

This OpenAPI fragment describes OIDC/OAuth client resource operations provided by the OIDC adapter. This file is merged with the other fragments to produce the full API specification.

Download OpenAPI Definition (YAML)

Base URLs:

Authentication

Scope Scope Description
clients/write modify clients
clients/read read clients

clients

Retrieves and updates OAuth client definitions

createClient

Code samples

# You can also use wget
curl -X POST http://localhost:3030/admin/clients \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

POST http://localhost:3030/admin/clients HTTP/1.1
Host: localhost:3030
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "id": "7d32fe-client",
  "description": "HOACorp Finco development component client for live web site",
  "tokenAuth": "none",
  "applicationType": "web",
  "grantTypes": [
    "authorization_code"
  ],
  "responseType": "none",
  "redirectUrls": [
    "https://localhost:3030/callback",
    "https://production.org/callback"
  ],
  "logoutRedirectUrls": [
    "https://localhost:3030/logout",
    "https://production.org/logout"
  ],
  "corsUrls": [
    "https://localhost:3030/",
    "https://production.org/"
  ],
  "scopes": [
    "banking/read",
    "transfers/write"
  ],
  "securityInfo": [
    "string"
  ],
  "institutionId": "INSTID",
  "authMode": "customer",
  "adbWebBaseUrl": "https://dev-fxweb.apiture-comm-nonprod.com/piles/fxweb.pile",
  "adbApiBaseUrl": "https://dev-lb-fxws.apiture-comm-nonprod.com",
  "componentConnectUrl": "https://my.app.com/connect?arg=((connect))",
  "componentAuthUrl": "https://my.app.com/auth?arg=((auth))",
  "componentDisconnectUrl": "https://my.app.com/disconnect?arg=((connect))",
  "componentHostPublicKey": "customer",
  "componentHostPrivateKey": "customer",
  "componentApiturePublicKey": "customer",
  "componentApiturePrivateKey": "customer",
  "componentMaxConnectionHours": 4320,
  "accessTokenTtlSec": 3600,
  "refreshTokenTtlSec": 3600
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('http://localhost:3030/admin/clients',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'http://localhost:3030/admin/clients',
  method: 'post',

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

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post 'http://localhost:3030/admin/clients',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.post('http://localhost:3030/admin/clients', params={

}, headers = headers)

print r.json()

URL obj = new URL("http://localhost:3030/admin/clients");
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/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "http://localhost:3030/admin/clients", data)
    req.Header = headers

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

Create new OIDC/OAuth Client

POST http://localhost:3030/admin/clients

Create new OIDC client definition

Body parameter

{
  "id": "7d32fe-client",
  "description": "HOACorp Finco development component client for live web site",
  "tokenAuth": "none",
  "applicationType": "web",
  "grantTypes": [
    "authorization_code"
  ],
  "responseType": "none",
  "redirectUrls": [
    "https://localhost:3030/callback",
    "https://production.org/callback"
  ],
  "logoutRedirectUrls": [
    "https://localhost:3030/logout",
    "https://production.org/logout"
  ],
  "corsUrls": [
    "https://localhost:3030/",
    "https://production.org/"
  ],
  "scopes": [
    "banking/read",
    "transfers/write"
  ],
  "securityInfo": [
    "string"
  ],
  "institutionId": "INSTID",
  "authMode": "customer",
  "adbWebBaseUrl": "https://dev-fxweb.apiture-comm-nonprod.com/piles/fxweb.pile",
  "adbApiBaseUrl": "https://dev-lb-fxws.apiture-comm-nonprod.com",
  "componentConnectUrl": "https://my.app.com/connect?arg=((connect))",
  "componentAuthUrl": "https://my.app.com/auth?arg=((auth))",
  "componentDisconnectUrl": "https://my.app.com/disconnect?arg=((connect))",
  "componentHostPublicKey": "customer",
  "componentHostPrivateKey": "customer",
  "componentApiturePublicKey": "customer",
  "componentApiturePrivateKey": "customer",
  "componentMaxConnectionHours": 4320,
  "accessTokenTtlSec": 3600,
  "refreshTokenTtlSec": 3600
}

Parameters

ParameterDescription
body client (required)

Example responses

200 Response

{
  "id": "7d32fe-client",
  "description": "HOACorp Finco development component client for live web site",
  "tokenAuth": "none",
  "applicationType": "web",
  "grantTypes": [
    "authorization_code"
  ],
  "responseType": "none",
  "redirectUrls": [
    "https://localhost:3030/callback",
    "https://production.org/callback"
  ],
  "logoutRedirectUrls": [
    "https://localhost:3030/logout",
    "https://production.org/logout"
  ],
  "corsUrls": [
    "https://localhost:3030/",
    "https://production.org/"
  ],
  "scopes": [
    "banking/read",
    "transfers/write"
  ],
  "securityInfo": [
    "string"
  ],
  "institutionId": "INSTID",
  "authMode": "customer",
  "adbWebBaseUrl": "https://dev-fxweb.apiture-comm-nonprod.com/piles/fxweb.pile",
  "adbApiBaseUrl": "https://dev-lb-fxws.apiture-comm-nonprod.com",
  "componentConnectUrl": "https://my.app.com/connect?arg=((connect))",
  "componentAuthUrl": "https://my.app.com/auth?arg=((auth))",
  "componentDisconnectUrl": "https://my.app.com/disconnect?arg=((connect))",
  "componentHostPublicKey": "customer",
  "componentHostPrivateKey": "customer",
  "componentApiturePublicKey": "customer",
  "componentApiturePrivateKey": "customer",
  "componentMaxConnectionHours": 4320,
  "accessTokenTtlSec": 3600,
  "refreshTokenTtlSec": 3600,
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z"
}

Responses

StatusDescription
200 OK
Client definition
Schema: client
StatusDescription
400 Bad Request
Bad Request
Schema: errorResponse

listClients

Code samples

# You can also use wget
curl -X GET http://localhost:3030/admin/clients \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET http://localhost:3030/admin/clients HTTP/1.1
Host: localhost:3030
Accept: application/json

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

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('http://localhost:3030/admin/clients',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'http://localhost:3030/admin/clients',
  method: 'get',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'http://localhost:3030/admin/clients',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('http://localhost:3030/admin/clients', params={

}, headers = headers)

print r.json()

URL obj = new URL("http://localhost:3030/admin/clients");
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"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "http://localhost:3030/admin/clients", data)
    req.Header = headers

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

List Clients

GET http://localhost:3030/admin/clients

List OIDC client definitions (all or filtered by Institution Id)

Parameters

ParameterDescription
institutionId
in: query
institutionId

read-only
minLength: 1
maxLength: 8

Example responses

200 Response

[
  {
    "id": "7d32fe-client",
    "description": "HOACorp Finco development component client for live web site",
    "tokenAuth": "none",
    "applicationType": "web",
    "grantTypes": [
      "authorization_code"
    ],
    "responseType": "none",
    "redirectUrls": [
      "https://localhost:3030/callback",
      "https://production.org/callback"
    ],
    "logoutRedirectUrls": [
      "https://localhost:3030/logout",
      "https://production.org/logout"
    ],
    "corsUrls": [
      "https://localhost:3030/",
      "https://production.org/"
    ],
    "scopes": [
      "banking/read",
      "transfers/write"
    ],
    "securityInfo": [
      "string"
    ],
    "institutionId": "INSTID",
    "authMode": "customer",
    "adbWebBaseUrl": "https://dev-fxweb.apiture-comm-nonprod.com/piles/fxweb.pile",
    "adbApiBaseUrl": "https://dev-lb-fxws.apiture-comm-nonprod.com",
    "componentConnectUrl": "https://my.app.com/connect?arg=((connect))",
    "componentAuthUrl": "https://my.app.com/auth?arg=((auth))",
    "componentDisconnectUrl": "https://my.app.com/disconnect?arg=((connect))",
    "componentHostPublicKey": "customer",
    "componentHostPrivateKey": "customer",
    "componentApiturePublicKey": "customer",
    "componentApiturePrivateKey": "customer",
    "componentMaxConnectionHours": 4320,
    "accessTokenTtlSec": 3600,
    "refreshTokenTtlSec": 3600,
    "createdAt": "2019-08-24T14:15:22Z",
    "updatedAt": "2019-08-24T14:15:22Z"
  }
]

Responses

StatusDescription
200 OK
List of clients
Schema: Inline
StatusDescription
404 Not Found
Not Found. There is no client managed by the OIDC provider with the specified id.
Schema: errorResponse

Response Schema

Status Code 200

List of client definitions

Property Name Description
List of client definitions array: [client]
ยป Client client

getClient

Code samples

# You can also use wget
curl -X GET http://localhost:3030/admin/clients/{clientId} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

GET http://localhost:3030/admin/clients/{clientId} HTTP/1.1
Host: localhost:3030
Accept: application/json

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

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('http://localhost:3030/admin/clients/{clientId}',
{
  method: 'GET',

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

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'http://localhost:3030/admin/clients/{clientId}',
  method: 'get',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.get 'http://localhost:3030/admin/clients/{clientId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('http://localhost:3030/admin/clients/{clientId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("http://localhost:3030/admin/clients/{clientId}");
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"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "http://localhost:3030/admin/clients/{clientId}", data)
    req.Header = headers

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

Get Client

GET http://localhost:3030/admin/clients/{clientId}

Retrieve OIDC client definition by Client Id

Parameters

ParameterDescription
clientId
in: path
clientId (required)

read-only
minLength: 1
maxLength: 100

Example responses

200 Response

{
  "id": "7d32fe-client",
  "description": "HOACorp Finco development component client for live web site",
  "tokenAuth": "none",
  "applicationType": "web",
  "grantTypes": [
    "authorization_code"
  ],
  "responseType": "none",
  "redirectUrls": [
    "https://localhost:3030/callback",
    "https://production.org/callback"
  ],
  "logoutRedirectUrls": [
    "https://localhost:3030/logout",
    "https://production.org/logout"
  ],
  "corsUrls": [
    "https://localhost:3030/",
    "https://production.org/"
  ],
  "scopes": [
    "banking/read",
    "transfers/write"
  ],
  "securityInfo": [
    "string"
  ],
  "institutionId": "INSTID",
  "authMode": "customer",
  "adbWebBaseUrl": "https://dev-fxweb.apiture-comm-nonprod.com/piles/fxweb.pile",
  "adbApiBaseUrl": "https://dev-lb-fxws.apiture-comm-nonprod.com",
  "componentConnectUrl": "https://my.app.com/connect?arg=((connect))",
  "componentAuthUrl": "https://my.app.com/auth?arg=((auth))",
  "componentDisconnectUrl": "https://my.app.com/disconnect?arg=((connect))",
  "componentHostPublicKey": "customer",
  "componentHostPrivateKey": "customer",
  "componentApiturePublicKey": "customer",
  "componentApiturePrivateKey": "customer",
  "componentMaxConnectionHours": 4320,
  "accessTokenTtlSec": 3600,
  "refreshTokenTtlSec": 3600,
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z"
}

Responses

StatusDescription
200 OK
Client definition
Schema: client
StatusDescription
404 Not Found
Not Found. There is no client managed by the OIDC provider with the specified id.
Schema: errorResponse

patchClient

Code samples

# You can also use wget
curl -X PATCH http://localhost:3030/admin/clients/{clientId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

PATCH http://localhost:3030/admin/clients/{clientId} HTTP/1.1
Host: localhost:3030
Content-Type: application/json
Accept: application/json

const fetch = require('node-fetch');
const inputBody = '{
  "id": "7d32fe-client",
  "description": "HOACorp Finco development component client for live web site",
  "tokenAuth": "none",
  "applicationType": "web",
  "grantTypes": [
    "authorization_code"
  ],
  "responseType": "none",
  "redirectUrls": [
    "https://localhost:3030/callback",
    "https://production.org/callback"
  ],
  "logoutRedirectUrls": [
    "https://localhost:3030/logout",
    "https://production.org/logout"
  ],
  "corsUrls": [
    "https://localhost:3030/",
    "https://production.org/"
  ],
  "scopes": [
    "banking/read",
    "transfers/write"
  ],
  "securityInfo": [
    "string"
  ],
  "institutionId": "INSTID",
  "authMode": "customer",
  "adbWebBaseUrl": "https://dev-fxweb.apiture-comm-nonprod.com/piles/fxweb.pile",
  "adbApiBaseUrl": "https://dev-lb-fxws.apiture-comm-nonprod.com",
  "componentConnectUrl": "https://my.app.com/connect?arg=((connect))",
  "componentAuthUrl": "https://my.app.com/auth?arg=((auth))",
  "componentDisconnectUrl": "https://my.app.com/disconnect?arg=((connect))",
  "componentHostPublicKey": "customer",
  "componentHostPrivateKey": "customer",
  "componentApiturePublicKey": "customer",
  "componentApiturePrivateKey": "customer",
  "componentMaxConnectionHours": 4320,
  "accessTokenTtlSec": 3600,
  "refreshTokenTtlSec": 3600
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('http://localhost:3030/admin/clients/{clientId}',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'http://localhost:3030/admin/clients/{clientId}',
  method: 'patch',

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

require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.patch 'http://localhost:3030/admin/clients/{clientId}',
  params: {
  }, headers: headers

p JSON.parse(result)

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

r = requests.patch('http://localhost:3030/admin/clients/{clientId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("http://localhost:3030/admin/clients/{clientId}");
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/json"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "http://localhost:3030/admin/clients/{clientId}", data)
    req.Header = headers

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

Patch Client

PATCH http://localhost:3030/admin/clients/{clientId}

Update OIDC client definition

Body parameter

{
  "id": "7d32fe-client",
  "description": "HOACorp Finco development component client for live web site",
  "tokenAuth": "none",
  "applicationType": "web",
  "grantTypes": [
    "authorization_code"
  ],
  "responseType": "none",
  "redirectUrls": [
    "https://localhost:3030/callback",
    "https://production.org/callback"
  ],
  "logoutRedirectUrls": [
    "https://localhost:3030/logout",
    "https://production.org/logout"
  ],
  "corsUrls": [
    "https://localhost:3030/",
    "https://production.org/"
  ],
  "scopes": [
    "banking/read",
    "transfers/write"
  ],
  "securityInfo": [
    "string"
  ],
  "institutionId": "INSTID",
  "authMode": "customer",
  "adbWebBaseUrl": "https://dev-fxweb.apiture-comm-nonprod.com/piles/fxweb.pile",
  "adbApiBaseUrl": "https://dev-lb-fxws.apiture-comm-nonprod.com",
  "componentConnectUrl": "https://my.app.com/connect?arg=((connect))",
  "componentAuthUrl": "https://my.app.com/auth?arg=((auth))",
  "componentDisconnectUrl": "https://my.app.com/disconnect?arg=((connect))",
  "componentHostPublicKey": "customer",
  "componentHostPrivateKey": "customer",
  "componentApiturePublicKey": "customer",
  "componentApiturePrivateKey": "customer",
  "componentMaxConnectionHours": 4320,
  "accessTokenTtlSec": 3600,
  "refreshTokenTtlSec": 3600
}

Parameters

ParameterDescription
clientId
in: path
clientId (required)

read-only
minLength: 1
maxLength: 100
body client (required)

Example responses

200 Response

{
  "id": "7d32fe-client",
  "description": "HOACorp Finco development component client for live web site",
  "tokenAuth": "none",
  "applicationType": "web",
  "grantTypes": [
    "authorization_code"
  ],
  "responseType": "none",
  "redirectUrls": [
    "https://localhost:3030/callback",
    "https://production.org/callback"
  ],
  "logoutRedirectUrls": [
    "https://localhost:3030/logout",
    "https://production.org/logout"
  ],
  "corsUrls": [
    "https://localhost:3030/",
    "https://production.org/"
  ],
  "scopes": [
    "banking/read",
    "transfers/write"
  ],
  "securityInfo": [
    "string"
  ],
  "institutionId": "INSTID",
  "authMode": "customer",
  "adbWebBaseUrl": "https://dev-fxweb.apiture-comm-nonprod.com/piles/fxweb.pile",
  "adbApiBaseUrl": "https://dev-lb-fxws.apiture-comm-nonprod.com",
  "componentConnectUrl": "https://my.app.com/connect?arg=((connect))",
  "componentAuthUrl": "https://my.app.com/auth?arg=((auth))",
  "componentDisconnectUrl": "https://my.app.com/disconnect?arg=((connect))",
  "componentHostPublicKey": "customer",
  "componentHostPrivateKey": "customer",
  "componentApiturePublicKey": "customer",
  "componentApiturePrivateKey": "customer",
  "componentMaxConnectionHours": 4320,
  "accessTokenTtlSec": 3600,
  "refreshTokenTtlSec": 3600,
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z"
}

Responses

StatusDescription
200 OK
Client definition
Schema: client
StatusDescription
404 Not Found
Not Found
Schema: errorResponse

deleteClient

Code samples

# You can also use wget
curl -X DELETE http://localhost:3030/admin/clients/{clientId} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

DELETE http://localhost:3030/admin/clients/{clientId} HTTP/1.1
Host: localhost:3030
Accept: application/json

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

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

fetch('http://localhost:3030/admin/clients/{clientId}',
{
  method: 'DELETE',

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

var headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'

};

$.ajax({
  url: 'http://localhost:3030/admin/clients/{clientId}',
  method: 'delete',

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

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.delete 'http://localhost:3030/admin/clients/{clientId}',
  params: {
  }, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('http://localhost:3030/admin/clients/{clientId}', params={

}, headers = headers)

print r.json()

URL obj = new URL("http://localhost:3030/admin/clients/{clientId}");
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/json"},
        "Authorization": []string{"Bearer {access-token}"},
        
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "http://localhost:3030/admin/clients/{clientId}", data)
    req.Header = headers

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

Delete Client

DELETE http://localhost:3030/admin/clients/{clientId}

Delete OIDC client definition

Parameters

ParameterDescription
clientId
in: path
clientId (required)

read-only
minLength: 1
maxLength: 100

Example responses

200 Response

{
  "id": "7d32fe-client",
  "description": "HOACorp Finco development component client for live web site",
  "tokenAuth": "none",
  "applicationType": "web",
  "grantTypes": [
    "authorization_code"
  ],
  "responseType": "none",
  "redirectUrls": [
    "https://localhost:3030/callback",
    "https://production.org/callback"
  ],
  "logoutRedirectUrls": [
    "https://localhost:3030/logout",
    "https://production.org/logout"
  ],
  "corsUrls": [
    "https://localhost:3030/",
    "https://production.org/"
  ],
  "scopes": [
    "banking/read",
    "transfers/write"
  ],
  "securityInfo": [
    "string"
  ],
  "institutionId": "INSTID",
  "authMode": "customer",
  "adbWebBaseUrl": "https://dev-fxweb.apiture-comm-nonprod.com/piles/fxweb.pile",
  "adbApiBaseUrl": "https://dev-lb-fxws.apiture-comm-nonprod.com",
  "componentConnectUrl": "https://my.app.com/connect?arg=((connect))",
  "componentAuthUrl": "https://my.app.com/auth?arg=((auth))",
  "componentDisconnectUrl": "https://my.app.com/disconnect?arg=((connect))",
  "componentHostPublicKey": "customer",
  "componentHostPrivateKey": "customer",
  "componentApiturePublicKey": "customer",
  "componentApiturePrivateKey": "customer",
  "componentMaxConnectionHours": 4320,
  "accessTokenTtlSec": 3600,
  "refreshTokenTtlSec": 3600,
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z"
}

Responses

StatusDescription
200 OK
Client definition
Schema: client
StatusDescription
404 Not Found
Not Found. There is no client managed by the OIDC provider with the specified id.
Schema: errorResponse

Schemas

abstractRequest

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

Abstract Request

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

Properties

NameDescription
Abstract Request object
An abstract schema used to define other request-only schemas. This is a HAL resource representation, minus the _problem defined in abstractResource.
_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.
read-only
format: uri

abstractResource

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

Abstract Resource

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 _problem object. In responses, if the operation was successful, this object will not include the _problem, but if the operation was a 4xx or 5xx error, this object will not include _embedded or any data fields, only _problem and optionally _links.

Properties

NameDescription
Abstract Resource object
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 _problem object. In responses, if the operation was successful, this object will not include the _problem, but if the operation was a 4xx or 5xx error, this object will not include _embedded or any data fields, only _problem and optionally _links.
_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.
read-only
format: uri
_problem problem
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only

attributes

{}

Attributes

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

Properties

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

client

{
  "id": "7d32fe-client",
  "description": "HOACorp Finco development component client for live web site",
  "tokenAuth": "none",
  "applicationType": "web",
  "grantTypes": [
    "authorization_code"
  ],
  "responseType": "none",
  "redirectUrls": [
    "https://localhost:3030/callback",
    "https://production.org/callback"
  ],
  "logoutRedirectUrls": [
    "https://localhost:3030/logout",
    "https://production.org/logout"
  ],
  "corsUrls": [
    "https://localhost:3030/",
    "https://production.org/"
  ],
  "scopes": [
    "banking/read",
    "transfers/write"
  ],
  "securityInfo": [
    "string"
  ],
  "institutionId": "INSTID",
  "authMode": "customer",
  "adbWebBaseUrl": "https://dev-fxweb.apiture-comm-nonprod.com/piles/fxweb.pile",
  "adbApiBaseUrl": "https://dev-lb-fxws.apiture-comm-nonprod.com",
  "componentConnectUrl": "https://my.app.com/connect?arg=((connect))",
  "componentAuthUrl": "https://my.app.com/auth?arg=((auth))",
  "componentDisconnectUrl": "https://my.app.com/disconnect?arg=((connect))",
  "componentHostPublicKey": "customer",
  "componentHostPrivateKey": "customer",
  "componentApiturePublicKey": "customer",
  "componentApiturePrivateKey": "customer",
  "componentMaxConnectionHours": 4320,
  "accessTokenTtlSec": 3600,
  "refreshTokenTtlSec": 3600,
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z"
}

Client

Properties

NameDescription
Client object
id string
description string
tokenAuth string

enum values: client_secret_basic, client_secret_post, client_secret_jwt, private_key_jwt, tls_client_auth, self_signed_tls_client_auth, none
applicationType string

enum values: web, native
grantTypes array: [string]

items: string
responseType string

enum values: code, id_token, code id_token, id_token token, code token, code id_token token, none
redirectUrls array: [string]

items: string
» pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$
logoutRedirectUrls array: [string]

items: string
» pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$
corsUrls array: [string]

items: string
» pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$
scopes array: [string]

items: string
securityInfo array: [string]

items: string
» pattern: ^(\*|[a-z]+)$
institutionId string

pattern: ^(\*|[A-Z]{1,8})$
authMode string

pattern: ^(customer|noauth|service|component)$
adbWebBaseUrl string

pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$
adbApiBaseUrl string

pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$
componentConnectUrl string

pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$
componentAuthUrl string

pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$
componentDisconnectUrl string

pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$
componentHostPublicKey string
componentHostPrivateKey string
componentApiturePublicKey string
componentApiturePrivateKey string
componentMaxConnectionHours integer
accessTokenTtlSec integer
refreshTokenTtlSec integer
createdAt string(date-time)
The date-time when the client was created.
read-only
format: date-time
updatedAt string(date-time)
The date-time when the client was updated.
read-only
format: date-time

clientId

"3abjbdk-opaque-id"

clientId

The client identifier associated with the OAuth/OIDC client.

type: string


read-only
minLength: 1
maxLength: 100

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"
    }
  },
  "_problem": {
    "_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/problems/specificErrorType"
      }
    },
    "_embedded": {
      "problems": []
    }
  }
}

Error Response

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

Properties

NameDescription
Error Response object
Describes an error response, typically returned on 4xx or 5xx problems from API operations. The _problem object contains the error details.
_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.
read-only
format: uri
_problem problem
An object which describes an error. This value is omitted if the operation succeeded without error.
read-only

institutionId

"FOO"

institutionId

The institutionId Identifier for the organization

type: string


read-only
minLength: 1
maxLength: 8

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

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.

NameDescription
Link object
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 string(uri) (required)
The URI or URI template for the resource/operation this link refers to.
format: uri
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.
format: uri
profile string(uri)
The URI of a profile document, a JSON document which describes the target resource/operation.
format: uri

{
  "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

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

NameDescription
Links object
An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations.
Link 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.

problem

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

Error

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

Properties

NameDescription
Error object
Describes an error in an API request or in a service called via the API.
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.
format: date-time
attributes attributes
Informative values or constraints which describe the error. For example, for a value out of range error, the attributes may specify the minimum and maximum values. This allows clients to present error messages as they see fit (the API does not assume the client/presentation tier). The set of attributes varies by error type.
remediation string
An optional localized string which provides hints for how the user or client can resolve the error.
problems array: [problem]
An optional array of nested error objects. This property is not always present.
items: object

Generated by @apiture/api-doc 3.1.0 on Fri Mar 22 2024 13:03:05 GMT+0000 (Coordinated Universal Time).