An API first for Capital One UK

As part of Capital One's aspirations to be a leader in digital finance, and our journey to comply with upcoming EU legislation, we’ve launched our first ever public API displaying Product Data. This is a significant milestone, the result of around a years worth of effort across multiple teams, which is worth celebrating.

But first, for those of you who have no idea what any of this means...

What the heck is a public API?

Hopefully, API's are "old hat", but as a refresher: an Application Programming Interface is a way for computers (rather than people) to exchange information. Let's say you wanted to view the balance of your Capital One account; you would use a web browser and a graphical web interface to read the information. Those graphics are useful to you as a human, but to a computer, they are just noise. APIs present pure information that computers can parse and understand.

So that's the API bit, but what about "public"? Historically Capital One has been using APIs for a long time, but this is the first time we've made one public over the open internet. Anyone, anywhere, can access this new API and use the data (check out further down the page for a link where you can access the API too).

All of this is part of a wider industry move towards open APIs and sharing of information/data. Some banks have already begun sharing public data, but we’re still amongst the first (and we think the first credit-only provider in the UK).

What is Product API?

The first public API we have taken live is Product API; it's the first step in a program of work to achieve compliance with something called "PSD2" early next year. The intention was to present some simple, public data. Keeping the data simple focused the effort on the technology needed to expose an Internet-facing API.

The product data presented by the API is quite simple, but it's surprising how much new technology was required to enable this. Turns out it’s quite challenging to build a new developer API platform from scratch.

This platform is a complex system that we've also built out on the cloud for the first time. We've learned a lot about new technologies, techniques such as auto-scaling, solved challenging monitoring problems, built developer support tools and features, understood enterprise controls and audit requirements in detail. We've also seen some fantastic collaboration across a wide variety of teams.

What went live and how do I access it?

Two elements are now live:

Why is this a success?

First of all; there has been a fantastic collaborative effort between TechOps, Cyber, Design, Product, Legal, TPM, Infrastructure and Software Engineering to understand and work on all of these requirements and challenges. Individuals and teams have pivoted and iterated to reach goals and milestones. It’s been a great example of agile in action to achieve exceptional results.

Secondly, this is a huge step forward into our aspirations to be a digital leader. As an engineer, this is not the first time I've helped create a new API presence and so am aware of the effort that is required to achieve a secure, stable and performant experience. To have delivered this from a standing start in less than 12 months is an unbelievable achievement and testament to the quality of people that Capital One hires.

Finally, as touched on above, there have been many first use-cases and new experiences, and it has been incredibly valuable to work through these in preparation for next year. By having a go with a functionally simple API, we understand a lot more about how to deploy APIs in the cloud. As a result, in January 2018 when the PSD2 compliance date looms, we are not discovering these things for the first time. This sort of forward thinking in technology is an important part of the success Capital One is driving towards.

This project has reflected some of the best practices in modern technology approaches; iterative, agile, DevOps, lean. All building on Capital One’s commitment to getting technology right.

Can you help?

If the idea of building a new API platform sounds tempting, Capital One is hiring great engineers. Our next goal is to build out the Open Banking Financial API standard ready for next year (hey, who said compliance wasn’t fun?) This is going to present even greater and more exciting challenges for our engineering teams, and it’s definitely something you could be part of!