Customers Bank Security API

OAuth2 token/security API. Issues bearer access tokens via the client-credentials grant for machine-to-machine access to all Customers Bank embedded-banking APIs. OpenAPI 3.0.1.

OpenAPI Specification

customers-bank-security-openapi.json Raw ↑
{"openapi":"3.0.1","info":{"title":"Security","version":"v1"},"servers":[{"url":"https://cubi-sandbox-api.customersbank.com/security/v1"}],"paths":{"/WebPubSub/client-access-uri":{"get":{"tags":["WebPubSub"],"summary":"/WebPubSub/client-access-uri - GET","description":"Gets a url for push notifications from the server","operationId":"get-webpubsub-client-access-uri","parameters":[{"name":"groupIds","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"text/plain":{"schema":{"type":"string","format":"uri"},"examples":{"default":{"value":null}}},"application/json":{"schema":{"type":"string","format":"uri"},"example":"string"},"text/json":{"schema":{"type":"string","format":"uri"},"example":"string"}}},"400":{"description":"BadRequest","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"},"example":{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"traceId":"string"}}}},"401":{"description":"Unauthorized","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"},"example":{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.2","title":"Unauthorized","status":401,"traceId":"string"}}}},"403":{"description":"Forbidden","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"},"example":{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.4","title":"Forbidden","status":403,"traceId":"string"}}}},"500":{"description":"InternalServerError","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"},"example":{"type":"https://tools.ietf.org/html/rfc9110#section-15.6.1","title":"An error occurred while processing your request.","status":500,"traceId":"string"}}}}}}},"/authenticate/token":{"post":{"tags":["Authenticate"],"summary":"/authenticate/token - POST","description":"Gets an auth token for the provided client id and secret","operationId":"post-authenticate-token","requestBody":{"description":"The client id and secret to authenticate","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cubi.Security.WebApi.Dtos.ClientCredentialsDto"},"example":{"clientId":"string","clientSecret":"string"}},"text/json":{"schema":{"$ref":"#/components/schemas/Cubi.Security.WebApi.Dtos.ClientCredentialsDto"},"example":{"clientId":"string","clientSecret":"string"}},"application/*+json":{"schema":{"$ref":"#/components/schemas/Cubi.Security.WebApi.Dtos.ClientCredentialsDto"},"example":{"clientId":"string","clientSecret":"string"}}}},"responses":{"200":{"description":"OK","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/Cubi.Security.WebApi.Dtos.AccessTokenDto"},"examples":{"default":{"value":null}}},"application/json":{"schema":{"$ref":"#/components/schemas/Cubi.Security.WebApi.Dtos.AccessTokenDto"},"example":{"tokenType":"Bearer","accessToken":"string","expiresOn":"string"}},"text/json":{"schema":{"$ref":"#/components/schemas/Cubi.Security.WebApi.Dtos.AccessTokenDto"},"example":{"tokenType":"Bearer","accessToken":"string","expiresOn":"string"}}}},"400":{"description":"BadRequest","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"},"example":{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"traceId":"string"}}}},"401":{"description":"Unauthorized"},"500":{"description":"InternalServerError","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"},"example":{"type":"https://tools.ietf.org/html/rfc9110#section-15.6.1","title":"An error occurred while processing your request.","status":500,"traceId":"string"}}}}}}},"/oauth2/token":{"post":{"tags":["Authenticate"],"summary":"/oauth2/token - POST","description":"Gets an auth token for the provided client id, secret, and grant type","operationId":"post-oauth2-token","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"properties":{"client_id":{"type":"string"},"client_secret":{"type":"string"},"grant_type":{"type":"string"},"organization":{"type":"string"}}}}}},"responses":{"200":{"description":"OK","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/Cubi.Security.WebApi.Dtos.OAuthResponseDto"},"examples":{"default":{"value":null}}},"application/json":{"schema":{"$ref":"#/components/schemas/Cubi.Security.WebApi.Dtos.OAuthResponseDto"},"example":{"access_token":"string","token_type":"Bearer","expires_in":3598}},"text/json":{"schema":{"$ref":"#/components/schemas/Cubi.Security.WebApi.Dtos.OAuthResponseDto"},"example":{"access_token":"string","token_type":"Bearer","expires_in":3598}}}},"400":{"description":"BadRequest","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"},"example":{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"traceId":"string"}}}},"401":{"description":"Unauthorized","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"},"examples":{"default":{"value":null}}},"application/json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"},"example":{"type":"string","title":"string","status":0,"detail":"string","traceId":"string"}},"text/json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"},"example":{"type":"string","title":"string","status":0,"detail":"string","traceId":"string"}}}},"500":{"description":"InternalServerError","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"},"example":{"type":"https://tools.ietf.org/html/rfc9110#section-15.6.1","title":"An error occurred while processing your request.","status":500,"traceId":"string"}}}}}}}},"components":{"schemas":{"Cubi.Security.WebApi.Dtos.AccessTokenDto":{"type":"object","properties":{"tokenType":{"type":"string","description":"This will always be Bearer","nullable":true,"example":"Bearer"},"accessToken":{"type":"string","description":"The access token","nullable":true},"expiresOn":{"type":"string","description":"The time the token expires at","format":"date-time"}},"additionalProperties":false,"description":"The results of a successful authentication"},"Cubi.Security.WebApi.Dtos.ClientCredentialsDto":{"required":["clientId","clientSecret"],"type":"object","properties":{"clientId":{"minLength":1,"type":"string","description":"The client id"},"clientSecret":{"minLength":1,"type":"string","description":"The secret for the authentication call"}},"additionalProperties":false,"description":"The credentials to use to authenticate"},"Cubi.Security.WebApi.Dtos.OAuthResponseDto":{"type":"object","properties":{"access_token":{"type":"string","description":"The authorized access token","nullable":true},"token_type":{"type":"string","nullable":true,"example":"Bearer"},"expires_in":{"type":"integer","format":"int32","example":3598}},"additionalProperties":false,"description":"The result of a successful authentication"},"Microsoft.AspNetCore.Mvc.ProblemDetails":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32","nullable":true},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true}},"additionalProperties":{}},"Microsoft.AspNetCore.Mvc.ValidationProblemDetails":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32","nullable":true},"detail":{"type":"string","nullable":true},"traceId":{"type":"string","nullable":true},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}}},"additionalProperties":{}}}},"tags":[{"name":"Authenticate","description":"Provides endpoints to enable authentication to the Cubi api's"},{"name":"WebPubSub","description":"Enables push notifications from the server"}],"x-readme":{"explorer-enabled":false,"proxy-enabled":true}}