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
- OAuth2 authentication (
accessToken
)- OAuth client credential flow
- Flow:
clientCredentials
- Token URL = https://api.devbank.apiture.com/auth/oauth2/token
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
Parameter | Description |
---|---|
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
Status | Description |
---|---|
200 | OK |
Client definition | |
Schema: client |
Status | Description |
---|---|
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
Parameter | Description |
---|---|
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
Status | Description |
---|---|
200 | OK |
List of clients | |
Schema: Inline |
Status | Description |
---|---|
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 | |
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
Parameter | Description |
---|---|
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
Status | Description |
---|---|
200 | OK |
Client definition | |
Schema: client |
Status | Description |
---|---|
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
Parameter | Description |
---|---|
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
Status | Description |
---|---|
200 | OK |
Client definition | |
Schema: client |
Status | Description |
---|---|
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
Parameter | Description |
---|---|
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
Status | Description |
---|---|
200 | OK |
Client definition | |
Schema: client |
Status | Description |
---|---|
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
Name | Description |
---|---|
Abstract Request | An abstract schema used to define other request-only schemas. This is a HAL resource representation, minus the _problem defined in abstractResource . |
_links | An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. |
_embedded | An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | 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
Name | Description |
---|---|
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 . |
_links | An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. |
_embedded | An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | The URI of a resource profile which describes the representation. read-only format: uri |
_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
Name | Description |
---|---|
Attributes | 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
Name | Description |
---|---|
Client | |
id | |
description | |
tokenAuth | enum values: client_secret_basic , client_secret_post , client_secret_jwt , private_key_jwt , tls_client_auth , self_signed_tls_client_auth , none |
applicationType | enum values: web , native |
grantTypes | array: [ items: string |
responseType | enum values: code , id_token , code id_token , id_token token , code token , code id_token token , none |
redirectUrls | array: [ items: string » pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$ |
logoutRedirectUrls | array: [ items: string » pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$ |
corsUrls | array: [ items: string » pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$ |
scopes | array: [ items: string |
securityInfo | array: [ items: string » pattern: ^(\*|[a-z]+)$ |
institutionId | pattern: ^(\*|[A-Z]{1,8})$ |
authMode | pattern: ^(customer|noauth|service|component)$ |
adbWebBaseUrl | pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$ |
adbApiBaseUrl | pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$ |
componentConnectUrl | pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$ |
componentAuthUrl | pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$ |
componentDisconnectUrl | pattern: ^$|^https?:\/\/(\w|-)+(\.(\w|-)+)*(:[0-9]+)?(\/.*)?$ |
componentHostPublicKey | |
componentHostPrivateKey | |
componentApiturePublicKey | |
componentApiturePrivateKey | |
componentMaxConnectionHours | |
accessTokenTtlSec | |
refreshTokenTtlSec | |
createdAt | The date-time when the client was created. read-only format: date-time |
updatedAt | 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
Name | Description |
---|---|
Error Response | Describes an error response, typically returned on 4xx or 5xx problems from API operations. The _problem object contains the error details. |
_links | An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. |
_embedded | An optional map of nested resources, mapping each nested resource name to a nested resource representation. |
_profile | The URI of a resource profile which describes the representation. read-only format: uri |
_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
link
{
"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.
Properties
Name | Description |
---|---|
Link | Describes a hypermedia link within a _links object in HAL representations. In Apiture APIs, links are HAL links, but Apiture APIs do not use the name or hreflang properties of HAL. Apiture links may include a method property. |
href | (required) The URI or URI template for the resource/operation this link refers to. format: uri |
type | The media type for the resource. |
templated | If true, the link's href is a URI template. |
title | An optional human-readable localized title for the link. |
deprecation | 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 | The URI of a profile document, a JSON document which describes the target resource/operation. format: uri |
links
{
"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.
Properties
Name | Description |
---|---|
Links | An optional map of links, mapping each link relation to a link object. This model defines the _links object of HAL representations. |
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
Name | Description |
---|---|
Error | Describes an error in an API request or in a service called via the API. |
message | (required) A localized message string describing the error condition. |
_id | 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 | The HTTP status code associate with this error. minimum: 100 maximum: 599 |
type | 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 | An RFC 3339 UTC time stamp indicating when the error occurred. format: date-time |
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 | An optional localized string which provides hints for how the user or client can resolve the error. |
problems | array: An optional array of nested error objects. This property is not always present. items: object |
@apiture/api-doc
3.1.0 on Fri Nov 03 2023 17:36:12 GMT+0000 (Coordinated Universal Time).