GovSearchAI Connector Configuration Guide

Prev Next

Overview

TechnoMile’s Competitive Insights Connector is a solution built for Government Contractors to streamline federal data management, reporting, and gain more actionable intel.

The Competitive Insights Connector does this by centralizing real-time Federal data directly from sources such as USA Spending, Federal Procurement Data Systems (FPDS), and GovSearch. Fed Connect data is also displayed along with SAM and APFS forecast posts.

Upon installation, Competitive Insights data and functionality from these sources are available on multiple entities within your Microsoft Dynamics instance.

Audience

  • Microsoft Dynamics Administrators

  • IT Support

Prerequisites

Ensure that the TechnoMile’s Growth Suite package has already been installed and configured on your Microsoft Dynamics instance. Please contact TechnoMile Support or email support@technomile.com for the following information prior to starting your installation:

  • Competitive Insights Connector installation package

  • API List - TechnoMile Competitive Insights 2023.4.0.0 (.csv file)

Steps for Installation

Tips:

  • It is recommended to install TechnoMile’s Competitive Insights Connector in a Sandbox environment for testing, prior to its installation in your Production environment.

  • Please contact TechnoMile Support or email support@technomile.com for a separate Competitive Insights Connector installation package for your Sandbox/Test environment.

  1. Login to your Microsoft Dynamics instance.

  2. Open App Launcher and click Power Apps.
    AppLauncher.png

  3. Click Environment and select an Environment, as per your requirements.
    2_Environment.png

  4. Go to Solutions and click Import.
    3_PowerApp.png

  5. Click Browse.
    4_Browse.png

  6. Select the TM Analytics Connector installation package that you received from TechnoMile, which is saved on your system.

    TM Analytics Connector installation package is selected.

  7. Click Next.
    5_TMAnalyticsConnectorNext.png

  8. Click Import.
    Page displays with the installed TechnoMile Competitive Insights package.

    7 TMCompetitiveInsights.png

Steps for Configuration

Import API Data

  1. Click the Settings icon and select Advanced settings.
    8_AdvancedSettings.png

  2. Open the Settings sitemap and click Data Management.
    9_DataManagement.png

  3. Click Imports.
    10_Imports.png

  4. Click Import Data.
    11_ImportData.png

  5. Click Choose File.
    12_ChooseFile.png

  6. Select the TechnoMile Competitive Insights 2023.4.0.0.csv file that you received from TechnoMile, which is saved on your system and click Next.

  7. Click Next again.

  8. Click Next.

  9. Click the drop-down menu under the Microsoft Dynamics 365 Record Types column, select Config, and click Next.

  10. Click the drop-down menu next to Mediator Vendor Url Link under Optional Fields and select Mediator Vendor URL.
    18_MapFields.png

  11. Similarly, perform the same step as shown above for the Vendor Award Details With Piid field.

  12. Click Next.
    19_MapFieldsNext.png

  13. Click Next.

  14. Enter Data Map Name as Analytics Mapping and click Submit.
    21_AnalyticsMapping.png

  15. Click Finish.
    API Data is imported.

Register an Application on Microsoft Azure

  1. Go to Azure Active Directory using the following URL - https://portal.azure.com/.
    24_MicrosoftAzure.png

  2. Click App registrations and then click New registration.
    25_NewAppRegistration.png

  3. Perform the following steps:

    1. Enter Name as Competitive Insights.

    2. Choose Supported account types as Accounts in this organizational directory only.

    3. Select Redirect URI as Web.

    4. Click Register.
      26_RegAnApp.pngCompetitive Insights
      application is registered on Microsoft Azure.

      27_CompetitiveInsightsApp.png

Configure Certificates & Secret Settings

  1. Go to Certificates & secrets and click New client secret.
    28_CertificateSecretsNewClient.png

  2. Enter field details such as Description, Expires, Start, and End and click Add.
    NOTES:

    • While adding client secret details, the Expires field has multiple options such as 3 months, 12 months, Custom, etc. Here, you can select any option, as per your requirements.

    • Note that post selecting the Custom option in the Expires field, the Start and End fields also need to be specified.
      Client secret details are added.
      29_ClientSecret.png

  3. Copy Value that is placed next to the Expires field as shown in the image below.
    30_CompetitiveInsightsValue.png

  4. Paste the copied Value as Password into an application such as Notepad.
    31_PassowrdCopiedValue.png

Configure API Permissions Settings

  1. Go to API permissions and click Add a permission.32_AddPermissions.pngBy default, the Microsoft APIs tab opens.

  2. Scroll down and click Dynamics CRM.
    33_RequestAPIPErmissions.png

  3. Click Grant admin consent.
    34_GrantAdminConsent.pngAPI Permissions settings are configured.

Configure Manifest Settings

  1. Go to Manifest.

  2. Ensure that both the allowPublicClient and oauth2AllowImplicitFlow values are set as true.
    35_AllowPublicClient.png36_Auth2AllowImplicitFlow.png

Overview

  1. Go to Overview.

  2. Hover your cursor over the Application ID.

  3. Click the Copy to clipboard icon.
    37_CopytoClipboardIcon.png
    Note that once the Application ID is copied, the hover text Copy to clipboard changes to Copied as highlighted in the image below.

    38_Copied.png

  4. Paste the copied ID as App ID into an application such as Notepad.
    39_CopiedIDtoNotepad.png

  5. Similarly, perform the same step as shown above to copy Directory ID.
    40_DirectoryTenantID.png

  6. Paste the copied ID as Directory ID into an application such as Notepad.
    41_DirIDtoNotepad.png

  7. Go to Azure Active Directory and click App registrations.
    NOTE: Competitive Insights application displays in the list as highlighted in the image below.
    Competitive Insights application is registered on Microsoft Azure.

    42_CopiedInsightsApp.png

Configure Application ID in Microsoft Dynamics

  1. Go to https://portal.azure.com.

  2. After login, click App registrations, then click All applications, enter text Competitive Insights in the search bar, and click Competitive Insights in search results.
    138_AppUserAppReg.jpg

  3. Click the Copy to clipboard icon against Application ID.
    139_AppUserAppID.jpg

  4. Paste the copied ID into an application such as Notepad.
    140_AppUserNotepad.jpg

  5. Go to https://admin.powerplatform.microsoft.com/.

  6. After login, click Environments and select TechnoMile FedCap Product.
    134_AppUserEnvironment.jpg

  7. Click See all under Users.
    135_AppUserSeeAll.jpg

  8. Click the app users list link.
    136_AppUserList.jpg

  9. Click New app user.
    137_AppUserNew.jpg

  10. Click Add an app.
    Create a new app user popup window opens.
    141_AppUserPopup.jpgAdd an app from Azure Active Directory popup window opens.

  11. Paste the previously copied Application ID in the search bar, click Competitive Insights in search results, and click Add.
    144_AddanAppAzureDir.jpg

  12. Select a Business unit and click the pencil icon against Security roles.
    145_BusinessUnit.jpg

  13. Select System Administrator and System Customizer and click Save.
    146_AddSecurityRoles.jpg

  14. Click Create.
    147_CreateNewAppUSerCreate.jpgApplication User
    is added to Environment.

    148_AppUserAdded.jpg

Copy URL from Power Automate

  1. Open App Launcher and click Power Automate.
    47_PowerAutomate.png

  2. Click Environments and select an Environment, as per your requirements.
    48_Environment.png

  3. Go to Solutions, enter text technomile competitive insights in the search bar, and click TechnoMile Competitive Insights in search results.
    49_TMCompetitiveInsights.png

  4. Click Cloud flow and then click CI Widget - CRM Access Token Flow.

  5. Click Edit.

  6. Click When a HTTP request is received in the flow.

  7. Click the Copy Url icon.

  8. Paste the URL as CRM Access Token Flow URL into an application such as Notepad.

  9. Go back to the previous tab and click Done.
    55_PreviousTabDone.png

  10. Click CI Widget - MS Flow Register Token API.
    Perform the same steps to copy its URL as shown in steps 5 - 7 of Copy URL from Power Automate.

  11. Paste the URL as MS Flow Register Token API into an application such as Notepad.

Add Config Entity to Settings Sitemap

  1. Go back to your Microsoft Dynamics instance.

  2. Open App Launcher and click Power Apps.
    60_AppLauncherPowerApp.png

  3. Click Environment and select an Environment, as per your requirements.
    61_Environment.png

  4. Go to Solutions, enter text default solution in the search bar, and click Default Solution in search results.

  5. Click Tables, enter text config in the search bar, and click Config in search results.

    TIP:

    Sometimes, it may take up to several minutes to load the Config entity in a Default Solution.

  6. Click Properties.

  7. Click Advanced options.

  8. Select the Appear in search results checkbox and click Save.

  9. Go to Advanced Settings.

  10. Click the funnel icon to access Advanced Find.

  11. Select Config in the Look for: field and click Results.

  12. Click Competitive Insights.

  13. Paste the following:

    1. Paste CRM Access Token Flow URL in the CRM Access Token Flow URL field.

    2. Paste MS Flow Register Token API in the MS Flow Register Token API field.

  14. Click Save.

Configure Growth Account Entity

  1. Go back to Table in Power Apps by performing the same steps as shown in steps 1 - 4 of Add Config Entity to Settings Sitemap.

  2. Click Account.
    73_Account.png

  3. Go to the Forms tab and click Growth Account.
    NOTE:
    In this scenario, Growth Account form is being used. However, you can use any Main form type (pertaining to the Account entity) here.
    74_GrowthAcc.pngPower Apps Form
    page opens.

  4. Click Details and ensure that both the Label and Name fields are set as Details.
    75_Details.png

Add Sections to Growth Account

  1. Go to Components.

  2. Drag-and-drop 1-Column section onto the Form preview.

  3. Enter both the Label and Name fields as WidgetSection.
    76_WidgetSection.png

  4. Go to Form libraries and click Add library.
    77_FormLibAddLib.png

  5. Enter text WidgetConnector in the search bar, select WidgetConnector.js, and click Add.
    78_WidgetConnector.pngLibrary is added.
    79_Lib.png

  6. Go to Tree view and click Growth Account.
    80_EventTab.png

  7. Expand On Load and click Event Handler.
    81_OnLoadEventHandler.png

  8. Select Library as tma_WidgetConnector.js.

  9. Enter Function as Widgetcontroller.

  10. Select the Pass execution context as first parameter checkbox and click Done.
    82_ConfigEvent.pngEvent is configured on Growth Account.
    83_EventGrowthAcc.png

Add Fields to Growth Account

  1. Go to Components and drag-and-drop 2-Column section onto the Form preview.

  2. Enter Label as Agency Information Powered By TechnoMile and Name as AgencyInfo.
    84_AgencyInfo.png

  3. Go to Table columns and clear the Show only unused table columns checkbox selection.
    85_TableCol.png

  4. Enter text TM Agency Name in the search bar and drag-and-drop the TM Agency Name field into the Agency Information Powered By TechnoMile section.
    86_AgencyInfoPowerdBYTMSec.png

  5. Similarly, drag-and-drop the following fields into the same section:

    • TM Level 2 Agency

    • TM Address

    • TM Contact Identified

    • TM City

    • TM URL

    • TM State

    • TM Agency Phone

    • TM Country

    • TM Description

    • TM Zip
      87_FieldsAreAdded.png

  6. Go to Components and drag-and-drop 2-Column section onto the Form preview.

  7. Enter Label as Vendor Information Powered By TechnoMile and Name as VendorInfo.
    88_VendorInfo.png

  8. Go to Table columns and clear the Show only unused table columns checkbox selection.
    89_TableCols.png

  9. Enter text TM Address in the search bar and drag-and-drop the TM Address field into the Vendor Information Powered By TechnoMile section.
    90_TMAddress.png

  10. Similarly, drag-and-drop the following fields into the same section:

    • TM Vendor Name

    • TM City

    • TM Vendor Parent Name

    • TM State

    • TM Current FY Transactions

    • TM Country

    • TM Current FY Transactions Amount

    • TM Zip

    • TM Description

    • TM URL

    • TM DUNS Number
      91_Fields.png

  11. Click Save and then click Publish.
    94_SavenPublish.png

  12. Open App Launcher and go to any Model Driven App in a new tab (in this scenario, TechnoMile Growth app is being used).

  13. Go to Accounts and click to open a Vendor Account record.


    Vendor Account record page opens, here you can view the fields as added in step 10.

  14. Similarly, go to an Agency Account record page to view the fields as added in step 5.

  15. Go back to the Power Apps Form page and click Switch to classic.
    95_SwitchtoClassic.png

Add Web Resource to Growth Account

  1. Click Details, go to the INSERT tab, and click Web Resource.
    96_WebResource.png

  2. Enter Web resource as tma_Widget_AnalyticsData and Name as Widget_AnalyticsData.
    NOTE: Once the Name field value is inserted, then the Label field value is auto-populated accordingly.
    97_AddWebResource.png

  3. Go to the Formatting tab and enter Number of Rows as 1.

  4. Select the Automatically expand to use available space checkbox.
    98_AddWebResource.png

  5. Select Scrolling as Never, clear the Display border checkbox selection, and click OK.
    99_AddWebResourceNever.png

  6. Go to the HOME tab, click Save, and then click Publish.
    100_HomeTab.pngPublishing customizations…
    message displays.

    101_PublishCustomization.pngNOTE: As a part of this package, we have CI-Account (Main Form) as a reference form.

Configure Contact Entity

Add Field to Contact

  1. Go back to Table in Power Apps by performing the same steps as shown in steps 1 - 4 of Add Config Entity to Settings Sitemap.

  2. Click Contact.

  3. Enter text Contact in the search bar and click Contact in search results.

  4. Click Forms.

  5. Click Growth Contact.
    NOTE:
    In this scenario, Growth Contact form is being used. However, you can use any Main Form type (pertaining to the Contact entity) here.

  6. Enter text GS Office Phone in the search bar and drag-and-drop the GS Office Phone field into the New Contact section.

  7. Click Save and publish.

  8. Go to a Contact record page using App Launcher.
    Here, you can view the field as added in step 6.
    NOTE: As a part of this package, we have CI-Contact (Main Form) as a reference form.

Add GovSearch Tab to Contact

  1. Go to Components and click 1-column tab.

  2. Enter both the Label and Name fields as GovSearch.

  3. Go to Form libraries and click Add library.
    77_FormLibAddLib.png

  4. Enter text WidgetConnector in the search bar, select WidgetConnector.js, and click Add.
    78_WidgetConnector.pngLibrary is added.
    79_Lib.png

  5. Go to Tree view and click CI-Contact.

  6. Go to Events, expand On Load, and click Event Handler.

  7. Select Library as tma_WidgetConnector.js.

  8. Enter Function as Widgetcontroller.

  9. Select the Pass execution context as first parameter checkbox and click Done.

  10. Similarly, click Event Handler again, select Library as tma_WidgetConnector.js, enter Function as OnLoadContact, select the Pass execution context as first parameter checkbox, and click Done.
    Event is configured on CI-Contact.

  11. Click GovSearch and then click New Section.

  12. Enter both the Label and Name fields as Contact Widget.

  13. Go to Components, click Display, and then click HTML web resource.

  14. Enter text tma_widget_contact in the search bar, select tma_Widget_Contact, and click Add.

  15. Enter both the Label and Name fields as Widget_Contact, Component width as 1 column, and Component height as 12 rows, and select Scrolling as Never.

  16. Click to select the GovSearch tab, go to Events, and click Event Handler.

  17. Select Event Type as On Tab State Change and Library as tma_WidgetConnector.js, enter Function as OnChangeGovSearchContactTab, select the Pass execution context as first parameter checkbox, and click Done.

  18. Click Save and publish.

  19. Go to a Contact record page using App Launcher.
    Here, you can view the GovSearch tab on this page.

Configure Growth Opportunity Entity

Add Tab & Section to Growth Opportunity

  1. Go back to Table in Power Apps by performing the same steps as shown in steps 1 - 4 of Add Config Entity to Settings Sitemap.

  2. Enter text Opportunity in the search bar and click Opportunity in search results.

    TIP:
    Sometimes, it may take up to several minutes to load the Opportunity entity in a Default Solution.

  3. Go to the Forms tab and click Growth Opportunity.
    NOTE: In this scenario, Growth Opportunity form is being used. However, you can use any Main Form type (pertaining to the Opportunity entity) here.
    104_GrowthOpp.pngPower App Form page opens.

  4. Go to Components.

  5. Drag-and-drop 1-column tab next to the Summary tab onto the Form preview.

  6. Enter both the Label and Name fields as Competitive Insights.
    NOTE:
    When you drag-and-drop a tab from Components onto the Form preview, a New Section is added onto that tab by default.

    105_CompetitiveInsights.png

  7. Click New Section and enter both the Label and Name fields as WidgetSection.
    106_WidgetSection.png

  8. Similarly, perform the same steps as shown in steps 1 - 7 of Add Sections to Growth Account for configuring an Event and click Growth Opportunity in Tree view.
    Event is configured on Growth Opportunity.
    107_WidgetController.png

  9. Click Save and then click Publish.
    108_SavePublish.png

    Add Field to Growth Opportunity

    1. Go back to Solutions and click Solution with Growth Opportunity Form.
      PowerApps.png

    2. Click Opportunity.
      Oppor1.png

    3. Click Forms.
      Forms.png

    4. Click Growth Opportunity.
      GO.png

    5. Enter text UEI in the search bar and drag-and-drop UEI under Spark.
      UEI1.png

    6. Click Save and publish.
      SNA.png

    7. Go back to Opportunities under TechnoMile Growth - Sales and click to open an Opportunity Record.
      098.png
      Opportunity record page opens with the UEI field on it.

      UEIempty1.png

Add Web Resource to Growth Opportunity

  1. Go to the INSERT tab and click Web Resource.
    110_WebResourceINSERTtab.png

  2. Enter Web resource as tma_Widget_Opportunity and Name as Widget_Opportunity.
    NOTE: Once the Name field value is inserted, then the Label field value is auto-populated accordingly.
    111_AddWebResourceWidgetOpp.png

  3. Go to the Formatting tab and enter Number of Rows as 3.
    112_AddWebResource2.png

  4. Select Scrolling as Never, clear the Display border checkbox selection, and click OK.
    113_AddWebResourceNever.png

  5. Go to the HOME tab, click Save, and then click Publish.
    114_HomeTabSavePublish.pngPublishing customizations… message displays.
    116_PublishCustomizations.pngNOTE: As a part of this package, we have CI-Opportunity (Main Form type) as a reference form.

Add Spark Entity

  1. Go to www.make.powerapps.com.
    NOTE: Refer to the following image if you want to use another commercial URL.

  2. After login, click Environment and select a suitable Environment (in this scenario, TechnoMile FedCap Product is being used).
    1_Environment.jpg

  3. Click Solutions, enter text default solution in the search bar, and click Default Solution in search results.
    124_Solution.jpg

  4. Click Apps and go to any Model Driven App in a new tab (in this scenario, TechnoMile Growth app is being used).
    125_AppTMGrowth.jpg

  5. Click the Navigation icon, expand Growth, select TechnoMile Growth - Sales, and click Add.
    126_NavGrowthSalesAdd.jpg

  6. Select Subarea.
    127_AddSubArea.jpg

  7. Select Content type as Table and Table as Spark and click Add.
    NOTE: The Title field is auto-populated.
    128_SparkTable.jpgSpark View is populated.

  8. Click Save and then click Publish.
    129_SparkViewSave.jpg

  9. Click Settings.
    130_Settings.jpgSettings popup window opens.

  10. Click Features, select Yes under In-app notifications, and click Save.
    131_FeaturesPopup.jpg

  11. Click Publish.
    132_Publish.jpg

  12. Login to your Microsoft Dynamics instance and go to Sparks under TechnoMile Growth - Sales.
    Spark View displays.
    133_SparkPublished.jpg

Assign Security Roles

  1. Go back to Advanced Settings.

  2. Open the Settings sitemap and click Security.
    115_SettingSitemapSecurity.png

  3. Click Security Roles.
    117_SecurityRole.png

  4. Scroll down and click Sales Manager.
    118_SalesManager.png

  5. Go to the Custom Entities tab.
    119_CustomEntitiesYTab.png

  6. Scroll down and click the Config entity multiple times to give full access to Security Role: Sales Manager. Note that all the circular icons against the Config entity MUST turn green.
    120_SecurityRoleGreen.png

  7. Click Save and Close.
    121_SaveandClose.pngUpdating role… message displays.
    122_UpdatingRole.png

  8. Similarly, perform the same steps as shown above for the following Security Roles:

    • Growth System Customizer

    • TechnoMile Growth Suite Compliance Role

    • TechnoMile System Customizer