Third Party Tools and Integrations

This is a non-exhaustive list of third party tools that extends the list provided in the Technical Environment and Norms documentation.  It is meant to provide a list of the application specific functions we’ll leverage third parties to support.  Here is a table that outlines the integrations for your application, providing a detailed description, examples of use, and implementation notes:

NameDescriptionExamples of Use in ApplicationImplementation Notes
Creso.aiAPI to Organization Graph.Retrieve data on target customers, employees, and competitors for sales insights.Creso.ai is the first application that we’ll build on the Stock App and we’ll use it to provide the Organization Graph information.
Gemini (via Firebase)AI models for advanced computations, insights, or predictions.Refine company data and queries through Firebase-hosted AI processing.Access via GenKit with each app having their own global api key configuration provided via Firebase Remote Config.
ChatGPTAPI for conversational AI and LLM-based content generation.Automate crafting personalized outreach messages and responses for sales representatives.Use OpenAI’s APIs. Define input/output formats for message generation workflows.
PerplexityComplex query resolution and context-driven refinement of information.Enhance the precision of customer and competitor research queries.Explore API query capabilities and optimize usage based on scope of information.
Material UIPre-designed React component library for frontend development.Build modern, consistent UI elements such as forms, tables, and dashboards.Follow Material UI’s best practices for responsive design and customization.
FirebaseBackend-as-a-service platform for hosting, database management, and authentication.Provide hosting, real-time database for customer research data, and user authentication.Leverage Firestore for scalable storage of gathered data. Implement Firebase Authentication for secure user logins.
StripeSubscription billing and revenue management platform.Manage subscriptions for different tiers of application access (e.g., basic, premium).Set up subscription plans aligned with the application's pricing strategy. Ensure webhook support for automated billing.
LinkedIn Login AppAuthentication through LinkedIn for accessing customer-related features.Allow users to sign in with LinkedIn to access enriched company and employee data.Implement LinkedIn OAuth2 and manage access tokens securely.
Google Workspace AppIntegration for Google email, calendar, and other tools.Automate scheduling sales calls and managing communication with prospects.Obtain API credentials for Gmail, Calendar, and other tools. Manage permissions for email and calendar access.
Office 365 AppIntegration for Microsoft email and calendar tools.Similar functionality as Google Workspace for users in the Microsoft ecosystem.Implement OAuth2 for secure integration. customer for differences in API structures between Microsoft and Google.
SalesforceTarget CRM for the company operating the applicationSynch to CRM for all users and customers on the application

LLM Selection for a Given Task

All the applications implemented using the Stock Application framework are expected to make extensive use of AI to implement features.  The above list provides a variety of different LLMs.  We’ll tend to normalize to three:

  • Gemini in Firebase - Default to this as the LLM for the app as we get it for free via our Google Workspace subscription
  • For the additional LLMs use GenKit which is the Firebase “standard” integration method - https://firebase.google.com/docs/genkit
  • In general the goal would be to use the standard firebase plug-ins and model rather than writing our own custom code.
  • For web analysis queries use the ChatGPT Web Analyzer or Perplexity
  • For long form written content use ChatGPT o1
  • For backup queries or comparison queries us Chat GPT 40

A variety of table setup options will include information on formatting the options in a fashion that can readily be used in an LLM as a portion of a prompt.   In general this information is stored in the relevant row of the table as additional text information and appended into queries relating to that row.