openbanking.rs

Connect to either:

More information Do you have test environments for TPPs including a sandbox?.

Builds CircleCI

https://circleci.com/gh/banaio/openbanking.rs

Example

```sh $ cargo test Compiling openbanking v0.1.0 (/Users/mbana/dev/banaio/github/openbanking.rs) Finished dev [unoptimized + debuginfo] target(s) in 8.30s Running target/debug/deps/openbanking-0dfe4bba1bc6ed58

running 9 tests test client::claims::tests::testjwtnewgood ... ignored test client::clientcredentials::tests::testdeserializegood ... ok test client::accounts::tests::testtostringgood ... ok test config::tests::testreadconfigbad ... ok test client::claims::tests::testclaims ... ok test client::claims::tests::testprivateclaims ... ok test http::tests::testdefaultheaders ... ok test oidcdiscovery::tests::testdeserializegood ... ok test config::tests::testreadconfiggood ... ok

test result: ok. 8 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out

$ cargo run Compiling openbanking v0.1.0 (/Users/mbana/dev/banaio/github/openbanking) Finished dev [unoptimized + debuginfo] target(s) in 4.08s Running target/debug/openbanking INFO 2019-06-10T12:32:28Z: openbanking::oidcdiscovery: openidconfiguration=OpenIDConfiguration { requestparametersupported: true, claimsparametersupported: true, requesturiparametersupported: true, introspectionendpoint: "https://matls.as.aspsp.ob.forgerock.financial/oauth2/introspect", issuer: "https://as.aspsp.ob.forgerock.financial/oauth2", authorizationendpoint: "https://as.aspsp.ob.forgerock.financial/oauth2/authorize", tokenendpoint: "https://matls.as.aspsp.ob.forgerock.financial/oauth2/accesstoken", version: "3.1", userinfoendpoint: "https://matls.as.aspsp.ob.forgerock.financial/oauth2/userinfo", jwksuri: "https://as.aspsp.ob.forgerock.financial/api/jwk/jwkuri", registrationendpoint: "https://matls.as.aspsp.ob.forgerock.financial/open-banking/register/", requirerequesturiregistration: true, granttypessupported: ["refreshtoken", "clientcredentials", "authorizationcode"], scopessupported: ["openid", "payments", "fundsconfirmations", "accounts"], idtokenencryptionencvaluessupported: ["A256GCM", "A192GCM", "A128GCM", "A128CBC-HS256", "A192CBC-HS384", "A256CBC-HS512"], acrvaluessupported: ["urn:openbanking:psd2:sca", "urn:openbanking:psd2:ca"], requestobjectencryptionencvaluessupported: ["A256GCM", "A192GCM", "A128GCM", "A128CBC-HS256", "A192CBC-HS384", "A256CBC-HS512"], claimssupported: ["acr", "zoneinfo", "openbankingintentid", "address", "profile", "name", "phonenumber", "givenname", "locale", "familyname", "email"], tokenendpointauthmethodssupported: ["clientsecretpost", "privatekeyjwt", "clientsecretbasic", "tlsclientauth"], responsetypessupported: ["code token idtoken", "code", "code idtoken", "devicecode", "idtoken", "code token", "token", "token idtoken"], idtokenencryptionalgvaluessupported: ["RSA-OAEP", "RSA-OAEP-256", "A128KW", "A256KW", "RSA15", "dir", "A192KW"], subjecttypessupported: ["public", "pairwise"], idtokensigningalgvaluessupported: ["RS256", "PS256"], requestobjectsigningalgvaluessupported: ["RS256", "PS256"], requestobjectencryptionalgvaluessupported: ["RSA-OAEP", "RSA-OAEP-256", "A128KW", "RSA15", "A256KW", "dir", "A192KW"], userinfosigningalgvaluessupported: ["ES384", "HS256", "HS512", "ES256", "RS256", "HS384", "ES512"], userinfoencryptionencvaluessupported: ["A256GCM", "A192GCM", "A128GCM", "A128CBC-HS256", "A192CBC-HS384", "A256CBC-HS512"], userinfoencryptionalgvaluessupported: ["RSA-OAEP", "RSA-OAEP-256", "A128KW", "A256KW", "RSA15", "dir", "A192KW"], tokenendpointauthsigningalgvaluessupported: ["RS256", "PS256"] } INFO 2019-06-10T12:32:29Z: openbanking::client: response={"accesstoken":"eyJ0eXAiOiJKV1QiLCJ6aXAiOiJOT05FIiwia2lkIjoiRTE5N1kzMVFLT05mSk42aTdrQlkyMzFneUFvPSIsImFsZyI6IkVTMjU2In0.eyJzdWIiOiI0YzYyNTU1NS0yZTI5LTQxNGEtYjZlMC1mOGNiNzgyNTZmZGYiLCJjdHMiOiJPQVVUSDJfU1RBVEVMRVNTX0dSQU5UIiwiYXVkaXRUcmFja2luZ0lkIjoiOGEwNTFlODAtYzY4ZS00MDhhLWIxN2ItMWEzM2FhNGE0NmUxLTEwMTQwODIiLCJpc3MiOiJodHRwczovL2FzLmFzcHNwLm9iLmZvcmdlcm9jay5maW5hbmNpYWwvb2F1dGgyIiwidG9rZW5OYW1lIjoiYWNjZXNzX3Rva2VuIiwidG9rZW5fdHlwZSI6IkJlYXJlciIsImF1dGhHcmFudElkIjoiN0otUkF4WjVqNFg1ZU5yTmRNTG5NNGxzS0dJIiwiYXVkIjoiNGM2MjU1NTUtMmUyOS00MTRhLWI2ZTAtZjhjYjc4MjU2ZmRmIiwibmJmIjoxNTYwMTY5OTQ4LCJncmFudF90eXBlIjoiY2xpZW50X2NyZWRlbnRpYWxzIiwic2NvcGUiOlsib3BlbmlkIiwicGF5bWVudHMiLCJmdW5kc2NvbmZpcm1hdGlvbnMiLCJhY2NvdW50cyJdLCJhdXRoX3RpbWUiOjE1NjAxNjk5NDgsInJlYWxtIjoiL29wZW5iYW5raW5nIiwiZXhwIjoxNTYwMjU2MzQ4LCJpYXQiOjE1NjAxNjk5NDgsImV4cGlyZXNfaW4iOjg2NDAwLCJqdGkiOiJmS3hBS09rRU83aUU3Z2xOVTlkUTQydG13VncifQ.gkMU9OaTvlkni0kYhTzp5JObYA2BDimkv-upfIfcyhXoQcDcDV9idS8RILXK5Ud8k6ibNSkSptQrmT7YT831g","expiresin":86399,"idtoken":"eyJraWQiOiIyYzk3ZDdmOWQyYjRkNTE5OTI4MDM2MGVkZTMzZTYzZDQ4MTUwOTRkIiwiYWxnIjoiUFMyNTYifQ.eyJhdF9oYXNoIjoiMkZJWDFLZHZEMGdhVTZxWlA2MEFtdyIsInN1YiI6IjRjNjI1NTU1LTJlMjktNDE0YS1iNmUwLWY4Y2I3ODI1NmZkZiIsImF1ZGl0VHJhY2tpbmdJZCI6IjhhMDUxZTgwLWM2OGUtNDA4YS1iMTdiLTFhMzNhYTRhNDZlMS0xMDE0MDgzIiwiaXNzIjoiaHR0cHM6XC9cL2FzLmFzcHNwLm9iLmZvcmdlcm9jay5maW5hbmNpYWxcL29hdXRoMiIsInRva2VuTmFtZSI6ImlkX3Rva2VuIiwiYXVkIjoiNGM2MjU1NTUtMmUyOS00MTRhLWI2ZTAtZjhjYjc4MjU2ZmRmIiwiYXpwIjoiNGM2MjU1NTUtMmUyOS00MTRhLWI2ZTAtZjhjYjc4MjU2ZmRmIiwiYXV0aF90aW1lIjoxNTYwMTY5OTQ4LCJyZWFsbSI6Ilwvb3BlbmJhbmtpbmciLCJleHAiOjE1NjAyNTYzNDgsInRva2VuVHlwZSI6IkpXVFRva2VuIiwiaWF0IjoxNTYwMTY5OTQ5LCJqdGkiOiJkOTRmZjk0NC1kM2Q2LTRkMDEtOWEwYy1hMzQyMGQ5ZjU2OTAifQ.DykB-XTAZdB-YxzlLoHS7BZM8HlhOhBM5Orrrw3Pazprh3WmXKGHICIfqn2mHdvFOvTb9rdI51w8av195zkrTt3c0KJjEf0URErXdyJ-zldKlk-VdSJKiuTFFvLd6842vMUNlA52Haxc1PgYutng9Cd0ivEtHFG8n0j-aQ7TMiZvAGeTJregTnw-Cc40gtfMD5Bod50-PmxqEJFBLoM0xFE7GcgSrLH-hzCJNV1m2mSlSTBNmusRp7MIsFrjwg9E7n7lqaCxp54ubqiyp-ViuD-QsFZuVB9MH7LaCZo-NDSGGCJaYj1qHsVRyC3j3khMQDyq2N8AN6zo8RH6Wrcmw","tokentype":"Bearer","scope":"openid payments fundsconfirmations accounts"} ```

Swagger

The Swagger files are available at https://github.com/OpenBankingUK/read-write-api-specs/tree/master/dist.

Account and Transaction API Specification - v3.1

Payment Initiation API Specification - v3.1