‘Great I love your product, I see some synergy between both platforms. Let’s integrate together!
API integration has become a must to have for startups to scale and reach new markets or users. Yes, API integration is sexy but not every time. In this article, we won’t deep dive into the technical aspects of integrating two systems together. We will analyze API integration from a product perspective and understand the challenges and benefits they provide!
❓Part 1: Do I need to do an API integration?❓
Before getting to the heart of the matter, the first question to be solved is “Do I need to do an API integration?”. API integration is not an end goal by itself, it’s just a way to execute your solution. When you are experiencing a technology gap you can either:
- Build in-house
- Pay for it (partnership, API, etc …)
- Acquire a company with the desired technology
As a PO or Head of Product in a startup, you have to optimize your resource and make sure you invest time to projects which will bring value to your users. Each of the solutions above has some pros and cons. For early-stage startups, I would recommend selecting the solution which will optimize your risk/reward ratio in the short term.
❓Part 2: How do I find a great API partner❓
API integration is like a wedding! API integration is about human relationships first. It’s not only two systems integrating together but mainly two teams from different companies collaborating for weeks together. A great API integration starts with great relations between both companies. Find a partner that is aligned with your vision and way of thinking! Build a real relationship with them. It brings benefits to both of you.
The second step would be to look at the experience of the partner for API integrations. Partnering with a company with no experience can be a real challenge. If they don't have the capabilities, you will have to wait for them to build their API gateway first, and then you will be able to start the integration exercise. On the other side, some startups' business models are only based on API integrations. They have built their entire platform to facilitate anyone to connect with them. Human interaction with those partners is minimum.
The last step would be to look at how ‘tech friendly’ is your partner. Working with more traditional companies can slow down the entire integration process. You should find a company with a lean structure where the decision-making process allows you to report API bugs easily and find solutions quickly. Going back and forth between both teams can be very time consuming and exhausting. You don’t want to block your development work for a week while waiting for the API partner to fix issues they have.
❓Part 3: How to run an API integration❓
Each API integration is different. I cannot provide you an exhaustive list of things to do, but you will find here some general advice and guidelines I apply for myself.
Step 1: Meet each other 👪
As I say above, API is about human relations first. Do a presentation of both teams and start to learn about each other.
Step 2: Demo your own platform 🎥
Before jumping into integrating both systems, it would be great to understand how both platforms works. You don't need to have a deep knowledge of the partner’s platform but the more you know it, the easier will be the integration. If you are cautious to display your platform and sensitive data, you can always sign an NDA to keep any shared material confidential.
Step 3: Look at the API docs 📑
I always ask the partner to introduce their API structure and present the endpoints they have. On top of that, you should ask them if they have a sandbox environment portal or any kind of API docs which can help you.
Step 4: State diagram ↩️
In order to get the best of API integrations, draft a state diagram to visualize how both systems will communicate with each other. This is an important step, it can help you to spot early issues and challenges you may have.
Step 5: Timeline ⌛
This is a critical aspect of integration. Both teams must be coordinated and aligned before starting any development work. Even if this is a one-way integration, you still need the other side to allocate some resources during the testing phase in case some bugs are being raised.
Step 6: Development work⚙️
Once your requirements are ready, you can start the development work. Your role as a PO/PM is to assist your developers if there are any new topics/bugs raised during the integration. I always recommend keeping a communication channel between both teams to facilitate the integration (Slack, Microsoft team…etc)
Step 7: UAT/Testing ✅
Try to test your integration as soon as you can. Don’t deploy before testing it. Test both happy and non-happy flows. The less you test, the riskier will be the rollout.
Step 8: Monitoring results and Support flows 🆘
Coding is not a perfect science! There are many scenarios where you can find yourself:
- The API from your partner is down
- Your user flows changed and therefore impact your integration
- Your partner update his API schema without notifying you..etc
The best advice here would be to anticipate. Always implement a support flow in case the integration is not working as expected. Having an escalation matrix is essential.
If you want to learn more about product and entrepreneurship, don’t hesitate to subscribe to our email list with ‘Lisen’, our new training platform to learn product from product people (it’s coming soon…) Here. Be part of our early users and get early access to our training material at a special price. You will learn about how to build a product from scratch and scale it!
See you soon for new adventures!