The API Integration Process

March 14, 2023

Written by: Sandy Froonjian

In my previous article, I provided a general overview of what the API team at PCI does. In this article, I’m going to get more technical and explain the details of how we work with our clients to accomplish that integration. To begin integrating, the client must be set-up within both software programs. We typically integrate Deltek’s Costpoint and WorkBook products, but we can connect to various other software programs as needed. For the sake of simplicity, I will reference Costpoint in this article.

Once Costpoint is implemented, the customer will contact a PCI Sales Representative and  describe the integration they require. For example, what third-party software are they using? Which module within Deltek/Costpoint do they want connected? Which fields within the module do they want populated? Which way(s) do they want the data to flow? Once the PCI Sales Rep has a good understanding of what the client needs, a proposal is created for them. The proposal will contain all the answers to the above questions, as well as the final cost of the integration.

            After the proposal is signed, the API team jumps in! The API team consists of a Project Manager, a Principal Consultant, and Software Engineer(s). Once the team is assigned, we first meet for a kick-off call, where we introduce ourselves, outline the steps of your integration, and give you a timeframe for each part of process. We will also schedule a weekly meeting series so that both parties can stay up to date on the progress.

            The first order of business for the API team is obtaining access to both your third-party system and Costpoint. Depending on the type of third-party software, we might need to get credentials to connect to its API’s, SFTP site, and/or SSL certificates. If we do not have access to your Costpoint system at this stage, we will connect through a VPN. The team then creates a WIC (Web Integration Console) environment for the client, which is an exact copy of their Costpoint system that is only used for testing purposes.

            Once we have all the access components we need, the next step is to complete a mapping document with the client. This is where customization comes into play. Because we are working with two completely different systems, the fields found in each system don’t align perfectly. Therefore, we need to discuss with the client how they want data in one system to flow into the other. This often involves creating crosswalks because the two systems might contain data of the same field in different formats. For instance, the field “Organization” in system 1 might be a text format such as “Premier Consulting and Integration”, while in system 2 it might be a numerical format such as “1.01.01.02”.

            After the API team and the client complete the mapping for every field, the Software Engineer can then code the function. The mapping file acts as the blueprints for the coder to create the API. Once they are done coding, we move into the testing phase. During this phase, we have the client make any possible test changes they see fit, so we can account for all possible scenarios while we are still pointed at the client’s WIC environment. Also, during this phase, the function is automated to run on whatever schedule the client asks for.

            Finally, once both parties are confident that all testing scenarios have been accounted for and that the API is working as intended, the engineer then points the function at the client’s production environment. At this point, the API is officially live! The API team provides one last meeting for the client called the “Dashboard Review.” During this review, we provide access to our Astrata dashboard site where the client  can monitor all the logs/run of the function moving forward. They also have the ability on this site to submit support tickets directly to the API team if they run into issues or concerns.

The amount of time that the entire integration process takes varies. If it’s an integration that we have done before, it can be as quick as 5-6 weeks, but if it’s a brand-new integration, it can take 7-8 weeks.

The diagram below summarizes the entire integration process:

Further Reading…