v5.1.0 filtered by tag: Metric (7 APIs)
Get Aggregate Metrics
Returns aggregate metrics on api usage eg. total count, response time (in ms), etc.
Should be able to filter on the following fields
eg: /management/aggregate-metrics?from_date=1100-01-01T01:01:01.000Z&to_date=1100-01-01T01:01:01.000Z&consumer_id=5
&user_id=66214b8e-259e-44ad-8868-3eb47be70646&implemented_by_partial_function=getTransactionsForBankAccount
&implemented_in_version=v3.0.0&url=/obp/v3.0.0/banks/gh.29.uk/accounts/8ca8a7e4-6d02-48e3-a029-0b2bf89de9f0/owner/transactions
&verb=GET&anon=false&app_name=MapperPostman
&exclude_app_names=API-EXPLORER,API-Manager,SOFI,null
1 from_date (defaults to the day before the current date): eg:from_date=1100-01-01T01:01:01.000Z
2 to_date (defaults to the current date) eg:to_date=1100-01-01T01:01:01.000Z
3 consumer_id (if null ignore)
4 user_id (if null ignore)
5 anon (if null ignore) only support two value : true (return where user_id is null.) or false (return where user_id is not null.)
6 url (if null ignore), note: can not contain '&'.
7 app_name (if null ignore)
8 implemented_by_partial_function (if null ignore),
9 implemented_in_version (if null ignore)
10 verb (if null ignore)
11 correlation_id (if null ignore)
12 include_app_names (if null ignore).eg: &include_app_names=API-EXPLORER,API-Manager,SOFI,null
13 include_url_patterns (if null ignore).you can design you own SQL LIKE pattern. eg: &include_url_patterns=%management/metrics%,%management/aggregate-metrics%
14 include_implemented_by_partial_functions (if null ignore).eg: &include_implemented_by_partial_functions=getMetrics,getConnectorMetrics,getAggregateMetrics
Authentication is Mandatory
JSON response body fields:
{
"count":7076,
"average_response_time":65.21,
"minimum_response_time":1.0,
"maximum_response_time":9039.0
}
-
CanReadAggregateMetrics
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20006: User is missing one or more roles:
- OBP-50000: Unknown Error.
Get Connector Metrics
Get the all metrics
require CanGetConnectorMetrics role
Filters Part 1.filtering (no wilde cards etc.) parameters to GET /management/connector/metrics
Should be able to filter on the following metrics fields
eg: /management/connector/metrics?from_date=1100-01-01T01:01:01.000Z&to_date=1100-01-01T01:01:01.000Z&limit=50&offset=2
1 from_date (defaults to one week before current date): eg:from_date=1100-01-01T01:01:01.000Z
2 to_date (defaults to current date) eg:to_date=1100-01-01T01:01:01.000Z
3 limit (for pagination: defaults to 1000) eg:limit=2000
4 offset (for pagination: zero index, defaults to 0) eg: offset=10
eg: /management/connector/metrics?from_date=1100-01-01T01:01:01.000Z&to_date=1100-01-01T01:01:01.000Z&limit=100&offset=300
Other filters:
5 connector_name (if null ignore)
6 function_name (if null ignore)
7 correlation_id (if null ignore)
Authentication is Mandatory
JSON response body fields:
correlation_id: 1flssoftxq0cr1nssr68u0mioj
date: 2020-01-27
duration: 5.123
{
"metrics":[{
"connector_name":"mapper",
"function_name":"getBanks",
"correlation_id":"12345",
"date":"1100-01-01T00:00:00Z",
"duration":1000
}]
}
-
CanGetConnectorMetrics
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-10005: Invalid Date Format. Could not convert value to a Date.
- OBP-50000: Unknown Error.
- OBP-20001: User not logged in. Authentication is required!
- OBP-20006: User is missing one or more roles:
Get Metrics
Get API metrics rows. These are records of each REST API call.
require CanReadMetrics role
Filters Part 1.filtering (no wilde cards etc.) parameters to GET /management/metrics
You can filter by the following fields by applying url parameters
eg: /management/metrics?from_date=1100-01-01T01:01:01.000Z&to_date=1100-01-01T01:01:01.000Z&limit=50&offset=2
1 from_date e.g.:from_date=1100-01-01T01:01:01.000Z Defaults to the Unix Epoch i.e. Thu Jan 01 00:00:00 UTC 1970
2 to_date e.g.:to_date=1100-01-01T01:01:01.000Z Defaults to a far future date i.e. Sat Jan 01 00:00:00 UTC 4000
Note: it is recommended you send a valid from_date (e.g. 5 seconds ago) and to_date (now + 1 second) if you want to get the latest records
Otherwise you may receive stale cached results.
3 limit (for pagination: defaults to 50) eg:limit=200
4 offset (for pagination: zero index, defaults to 0) eg: offset=10
5 sort_by (defaults to date field) eg: sort_by=date
possible values:
"url",
"date",
"user_name",
"app_name",
"developer_email",
"implemented_by_partial_function",
"implemented_in_version",
"consumer_id",
"verb"
6 direction (defaults to date desc) eg: direction=desc
eg: /management/metrics?from_date=1100-01-01T01:01:01.000Z&to_date=1100-01-01T01:01:01.000Z&limit=10000&offset=0&anon=false&app_name=TeatApp&implemented_in_version=v2.1.0&verb=POST&user_id=c7b6cb47-cb96-4441-8801-35b57456753a&user_name=susan.uk.29@example.com&consumer_id=78
Other filters:
7 consumer_id (if null ignore)
8 user_id (if null ignore)
9 anon (if null ignore) only support two value : true (return where user_id is null.) or false (return where user_id is not null.)
10 url (if null ignore), note: can not contain '&'.
11 app_name (if null ignore)
12 implemented_by_partial_function (if null ignore),
13 implemented_in_version (if null ignore)
14 verb (if null ignore)
15 correlation_id (if null ignore)
16 duration (if null ignore) non digit chars will be silently omitted
Authentication is Mandatory
JSON response body fields:
consumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
correlation_id: 1flssoftxq0cr1nssr68u0mioj
date: 2020-01-27
duration: 5.123
implemented_by_partial_function:
response_body: response_body
source_ip: source_ip
target_ip: target_ip
url: http://www.example.com/id-docs/123/image.png
user_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
user_name: felixsmith
verb:
{
"metrics":[{
"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"url":"www.openbankproject.com",
"date":"1100-01-01T00:00:00Z",
"user_name":"OBP",
"app_name":"SOFI",
"developer_email":"felixsmith@example.com",
"implemented_by_partial_function":"getBanks",
"implemented_in_version":"v210",
"consumer_id":"123",
"verb":"get",
"correlation_id":"v8ho6h5ivel3uq7a5zcnv0w1",
"duration":39,
"source_ip":"2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b",
"target_ip":"2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b",
"response_body":{
"code":401,
"message":"OBP-20001: User not logged in. Authentication is required!"
}
}]
}
-
CanReadMetrics
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20006: User is missing one or more roles:
- OBP-50000: Unknown Error.
Get Metrics at Bank
Get the all metrics at the Bank specified by BANK_ID
require CanReadMetrics role
Filters Part 1.filtering (no wilde cards etc.) parameters to GET /management/metrics
Should be able to filter on the following metrics fields
eg: /management/metrics?from_date=1100-01-01T01:01:01.000Z&to_date=1100-01-01T01:01:01.000Z&limit=50&offset=2
1 from_date (defaults to one week before current date): eg:from_date=1100-01-01T01:01:01.000Z
2 to_date (defaults to current date) eg:to_date=1100-01-01T01:01:01.000Z
3 limit (for pagination: defaults to 50) eg:limit=200
4 offset (for pagination: zero index, defaults to 0) eg: offset=10
5 sort_by (defaults to date field) eg: sort_by=date
possible values:
"url",
"date",
"user_name",
"app_name",
"developer_email",
"implemented_by_partial_function",
"implemented_in_version",
"consumer_id",
"verb"
6 direction (defaults to date desc) eg: direction=desc
eg: /management/metrics?from_date=1100-01-01T01:01:01.000Z&to_date=1100-01-01T01:01:01.000Z&limit=10000&offset=0&anon=false&app_name=TeatApp&implemented_in_version=v2.1.0&verb=POST&user_id=c7b6cb47-cb96-4441-8801-35b57456753a&user_name=susan.uk.29@example.com&consumer_id=78
Other filters:
7 consumer_id (if null ignore)
8 user_id (if null ignore)
9 anon (if null ignore) only support two value : true (return where user_id is null.) or false (return where user_id is not null.)
10 url (if null ignore), note: can not contain '&'.
11 app_name (if null ignore)
12 implemented_by_partial_function (if null ignore),
13 implemented_in_version (if null ignore)
14 verb (if null ignore)
15 correlation_id (if null ignore)
16 duration (if null ignore) non digit chars will be silently omitted
Authentication is Mandatory
URL Parameters:
BANK_ID: gh.29.uk
JSON response body fields:
consumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
correlation_id: 1flssoftxq0cr1nssr68u0mioj
date: 2020-01-27
duration: 5.123
implemented_by_partial_function:
url: http://www.example.com/id-docs/123/image.png
user_id: 9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1
user_name: felixsmith
verb:
{
"metrics":[{
"user_id":"9ca9a7e4-6d02-40e3-a129-0b2bf89de9b1",
"url":"www.openbankproject.com",
"date":"1100-01-01T00:00:00Z",
"user_name":"OBP",
"app_name":"SOFI",
"developer_email":"felixsmith@example.com",
"implemented_by_partial_function":"getBanks",
"implemented_in_version":"v210",
"consumer_id":"123",
"verb":"get",
"correlation_id":"v8ho6h5ivel3uq7a5zcnv0w1",
"duration":39
}]
}
-
CanGetMetricsAtOneBank
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20006: User is missing one or more roles:
- OBP-50000: Unknown Error.
Get Top APIs
Get metrics about the most popular APIs. e.g.: total count, response time (in ms), etc.
Should be able to filter on the following fields
eg: /management/metrics/top-apis?from_date=1970-01-01T00:00:00.000Z&to_date=2024-03-13T11:39:35.728Z&consumer_id=5
&user_id=66214b8e-259e-44ad-8868-3eb47be70646&implemented_by_partial_function=getTransactionsForBankAccount
&implemented_in_version=v3.0.0&url=/obp/v3.0.0/banks/gh.29.uk/accounts/8ca8a7e4-6d02-48e3-a029-0b2bf89de9f0/owner/transactions
&verb=GET&anon=false&app_name=MapperPostman
&exclude_app_names=API-EXPLORER,API-Manager,SOFI,null
1 from_date (defaults to the one year ago): eg:from_date=1970-01-01T00:00:00.000Z
2 to_date (defaults to the current date) eg:to_date=2024-03-13T11:39:35.728Z
3 consumer_id (if null ignore)
4 user_id (if null ignore)
5 anon (if null ignore) only support two value : true (return where user_id is null.) or false (return where user_id is not null.)
6 url (if null ignore), note: can not contain '&'.
7 app_name (if null ignore)
8 implemented_by_partial_function (if null ignore),
9 implemented_in_version (if null ignore)
10 verb (if null ignore)
11 correlation_id (if null ignore)
12 duration (if null ignore) non digit chars will be silently omitted
13 exclude_app_names (if null ignore).eg: &exclude_app_names=API-EXPLORER,API-Manager,SOFI,null
14 exclude_url_patterns (if null ignore).you can design you own SQL NOT LIKE pattern. eg: &exclude_url_patterns=%management/metrics%,%management/aggregate-metrics%
15 exclude_implemented_by_partial_functions (if null ignore).eg: &exclude_implemented_by_partial_functions=getMetrics,getConnectorMetrics,getAggregateMetrics
Authentication is Mandatory
JSON response body fields:
{
"top_apis":[{
"count":7076,
"Implemented_by_partial_function":"getBanks",
"implemented_in_version":"v1.2.1"
}]
}
-
CanReadMetrics
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20006: User is missing one or more roles:
- OBP-10016: Incorrect filter Parameters in URL.
- OBP-30042: Could not get the top apis from database.
- OBP-50000: Unknown Error.
Get Top Consumers
Get metrics about the top consumers of the API usage e.g. total count, consumer_id and app_name.
Should be able to filter on the following fields
e.g.: /management/metrics/top-consumers?from_date=1970-01-01T00:00:00.000Z&to_date=2024-03-13T11:39:35.729Z&consumer_id=5
&user_id=66214b8e-259e-44ad-8868-3eb47be70646&implemented_by_partial_function=getTransactionsForBankAccount
&implemented_in_version=v3.0.0&url=/obp/v3.0.0/banks/gh.29.uk/accounts/8ca8a7e4-6d02-48e3-a029-0b2bf89de9f0/owner/transactions
&verb=GET&anon=false&app_name=MapperPostman
&exclude_app_names=API-EXPLORER,API-Manager,SOFI,null
&limit=100
1 from_date (defaults to the one year ago): eg:from_date=1970-01-01T00:00:00.000Z
2 to_date (defaults to the current date) eg:to_date=2024-03-13T11:39:35.729Z
3 consumer_id (if null ignore)
4 user_id (if null ignore)
5 anon (if null ignore) only support two value : true (return where user_id is null.) or false (return where user_id is not null.)
6 url (if null ignore), note: can not contain '&'.
7 app_name (if null ignore)
8 implemented_by_partial_function (if null ignore),
9 implemented_in_version (if null ignore)
10 verb (if null ignore)
11 correlation_id (if null ignore)
12 duration (if null ignore) non digit chars will be silently omitted
13 exclude_app_names (if null ignore).eg: &exclude_app_names=API-EXPLORER,API-Manager,SOFI,null
14 exclude_url_patterns (if null ignore).you can design you own SQL NOT LIKE pattern. eg: &exclude_url_patterns=%management/metrics%,%management/aggregate-metrics%
15 exclude_implemented_by_partial_functions (if null ignore).eg: &exclude_implemented_by_partial_functions=getMetrics,getConnectorMetrics,getAggregateMetrics
16 limit (for pagination: defaults to 50) eg:limit=200
Authentication is Mandatory
JSON response body fields:
consumer_id: 7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh
{
"top_consumers":[{
"count":7076,
"consumer_id":"7uy8a7e4-6d02-40e3-a129-0b2bf89de8uh",
"app_name":"Api Explorer",
"developer_email":"felixsmith@example.com"
}]
}
-
CanReadMetrics
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20006: User is missing one or more roles:
- OBP-10016: Incorrect filter Parameters in URL.
- OBP-30045: Could not get the top consumers from database.
- OBP-50000: Unknown Error.
Search API Metrics via Elasticsearch
Search the API calls made to this API instance via Elastic Search.
Login is required.
CanSearchMetrics entitlement is required to search metrics data.
parameters:
esType - elasticsearch type
simple query:
q - plain_text_query
df - default field to search
sort - field to sort on
size - number of hits returned, default 10
from - show hits starting from
json query:
source - JSON_query_(URL-escaped)
example usage:
/search/metrics/q=findThis
or:
/search/metrics/source={"query":{"query_string":{"query":"findThis"}}}
Note!!
The whole JSON query string MUST be URL-encoded:
- For { use %7B
- For } use %7D
- For : use %3A
- For " use %22
etc..
Only q, source and esType are passed to Elastic
Elastic simple query: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-uri-request.html
Elastic JSON query: https://www.elastic.co/guide/en/elasticsearch/reference/current/query-filter-context.html
Authentication is Mandatory
JSON response body fields:
{
"jsonString":"{}"
}
-
CanSearchMetrics
- Please login to request this Role
- Required JSON Validation: No
- Allowed Authentication Types: Not set
- OBP-20001: User not logged in. Authentication is required!
- OBP-20006: User is missing one or more roles:
- OBP-50000: Unknown Error.