How to send a local file path thorugh the QnA Create Knowledgebase API?












0















I am referring to this QnA create knowledgebaseAPI documentation. I want to upload the knowledge base through the Excel file which is stored in the local path. I don't have URL for the excel file, only the local path.



I followed the code given on github link, I removed the unnecessary things and kept the variable "kb" as shown below:



   static string kb = $@"
{{
'name': 'VivekKB',
'qnaList': ,
'urls': [ ],
'files': [
'files': {{DBFile}}
]
}}


DBFile is the filename with full path. When I run the code, it creates an Empty knowledge store. It doesn't upload the excel file which I mentioned. Can you please help me to figure it out how to upload a local excel QnA data directly to QnA store. I want to avoid manual uploading excel to knowledgebases at https://www.qnamaker.ai.



Thanks in advance.
Vivek










share|improve this question





























    0















    I am referring to this QnA create knowledgebaseAPI documentation. I want to upload the knowledge base through the Excel file which is stored in the local path. I don't have URL for the excel file, only the local path.



    I followed the code given on github link, I removed the unnecessary things and kept the variable "kb" as shown below:



       static string kb = $@"
    {{
    'name': 'VivekKB',
    'qnaList': ,
    'urls': [ ],
    'files': [
    'files': {{DBFile}}
    ]
    }}


    DBFile is the filename with full path. When I run the code, it creates an Empty knowledge store. It doesn't upload the excel file which I mentioned. Can you please help me to figure it out how to upload a local excel QnA data directly to QnA store. I want to avoid manual uploading excel to knowledgebases at https://www.qnamaker.ai.



    Thanks in advance.
    Vivek










    share|improve this question



























      0












      0








      0








      I am referring to this QnA create knowledgebaseAPI documentation. I want to upload the knowledge base through the Excel file which is stored in the local path. I don't have URL for the excel file, only the local path.



      I followed the code given on github link, I removed the unnecessary things and kept the variable "kb" as shown below:



         static string kb = $@"
      {{
      'name': 'VivekKB',
      'qnaList': ,
      'urls': [ ],
      'files': [
      'files': {{DBFile}}
      ]
      }}


      DBFile is the filename with full path. When I run the code, it creates an Empty knowledge store. It doesn't upload the excel file which I mentioned. Can you please help me to figure it out how to upload a local excel QnA data directly to QnA store. I want to avoid manual uploading excel to knowledgebases at https://www.qnamaker.ai.



      Thanks in advance.
      Vivek










      share|improve this question
















      I am referring to this QnA create knowledgebaseAPI documentation. I want to upload the knowledge base through the Excel file which is stored in the local path. I don't have URL for the excel file, only the local path.



      I followed the code given on github link, I removed the unnecessary things and kept the variable "kb" as shown below:



         static string kb = $@"
      {{
      'name': 'VivekKB',
      'qnaList': ,
      'urls': [ ],
      'files': [
      'files': {{DBFile}}
      ]
      }}


      DBFile is the filename with full path. When I run the code, it creates an Empty knowledge store. It doesn't upload the excel file which I mentioned. Can you please help me to figure it out how to upload a local excel QnA data directly to QnA store. I want to avoid manual uploading excel to knowledgebases at https://www.qnamaker.ai.



      Thanks in advance.
      Vivek







      botframework qnamaker






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 26 '18 at 8:03







      Vivek Jain

















      asked Nov 22 '18 at 15:46









      Vivek JainVivek Jain

      409




      409
























          1 Answer
          1






          active

          oldest

          votes


















          1














          Connected with the QnA team directly, asking the following:



          Question: Is it possible to use a local file path to create KB through the programmatic API?



          I know given in the programmatic QnA API docs it demonstrates how to add a PDF file that’s already also available online as well:



          "files": [
          {
          "fileName": "SurfaceManual.pdf",
          "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf"
          }


          However when I tried using “POST Create Knowledgebase “ in Postman using the relative file path in the “fileUri”, I get “invalid uri” error.



          Request Body



          {
          "name": "Simple QnA",
          "files": [
          {
          "fileName": "simpleQnaSource.docx",
          "fileUri": "C:\Users\v-asho\Documents\RandomWordDocs"
          }
          ]
          }


          Response



          {
          "error": {
          "code": "BadArgument",
          "message": "Invalid input. See details.",
          "details": [
          {
          "code": "ValidationFailure",
          "message": "File Uri has one or more invalid uri.",
          "target": "Files[0].FileUri"
          }
          ]
          }
          }


          Uploading the .docx file online through qnamaker.ai portal successfully creates a KB, it’s specifically through the programmatic api where I’m having issues.





          QnA Team's Answer:



          fileUri” can have a publicly available and downloadable URI as value.
          When using it via API, please upload the contents of local file to a publicly available domain. (Example: Azure storage blob shared to public).






          share|improve this answer
























          • Thanks, @Zeryth. Finally, I had to use the blob too.

            – Vivek Jain
            Dec 17 '18 at 15:41











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53434405%2fhow-to-send-a-local-file-path-thorugh-the-qna-create-knowledgebase-api%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          Connected with the QnA team directly, asking the following:



          Question: Is it possible to use a local file path to create KB through the programmatic API?



          I know given in the programmatic QnA API docs it demonstrates how to add a PDF file that’s already also available online as well:



          "files": [
          {
          "fileName": "SurfaceManual.pdf",
          "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf"
          }


          However when I tried using “POST Create Knowledgebase “ in Postman using the relative file path in the “fileUri”, I get “invalid uri” error.



          Request Body



          {
          "name": "Simple QnA",
          "files": [
          {
          "fileName": "simpleQnaSource.docx",
          "fileUri": "C:\Users\v-asho\Documents\RandomWordDocs"
          }
          ]
          }


          Response



          {
          "error": {
          "code": "BadArgument",
          "message": "Invalid input. See details.",
          "details": [
          {
          "code": "ValidationFailure",
          "message": "File Uri has one or more invalid uri.",
          "target": "Files[0].FileUri"
          }
          ]
          }
          }


          Uploading the .docx file online through qnamaker.ai portal successfully creates a KB, it’s specifically through the programmatic api where I’m having issues.





          QnA Team's Answer:



          fileUri” can have a publicly available and downloadable URI as value.
          When using it via API, please upload the contents of local file to a publicly available domain. (Example: Azure storage blob shared to public).






          share|improve this answer
























          • Thanks, @Zeryth. Finally, I had to use the blob too.

            – Vivek Jain
            Dec 17 '18 at 15:41
















          1














          Connected with the QnA team directly, asking the following:



          Question: Is it possible to use a local file path to create KB through the programmatic API?



          I know given in the programmatic QnA API docs it demonstrates how to add a PDF file that’s already also available online as well:



          "files": [
          {
          "fileName": "SurfaceManual.pdf",
          "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf"
          }


          However when I tried using “POST Create Knowledgebase “ in Postman using the relative file path in the “fileUri”, I get “invalid uri” error.



          Request Body



          {
          "name": "Simple QnA",
          "files": [
          {
          "fileName": "simpleQnaSource.docx",
          "fileUri": "C:\Users\v-asho\Documents\RandomWordDocs"
          }
          ]
          }


          Response



          {
          "error": {
          "code": "BadArgument",
          "message": "Invalid input. See details.",
          "details": [
          {
          "code": "ValidationFailure",
          "message": "File Uri has one or more invalid uri.",
          "target": "Files[0].FileUri"
          }
          ]
          }
          }


          Uploading the .docx file online through qnamaker.ai portal successfully creates a KB, it’s specifically through the programmatic api where I’m having issues.





          QnA Team's Answer:



          fileUri” can have a publicly available and downloadable URI as value.
          When using it via API, please upload the contents of local file to a publicly available domain. (Example: Azure storage blob shared to public).






          share|improve this answer
























          • Thanks, @Zeryth. Finally, I had to use the blob too.

            – Vivek Jain
            Dec 17 '18 at 15:41














          1












          1








          1







          Connected with the QnA team directly, asking the following:



          Question: Is it possible to use a local file path to create KB through the programmatic API?



          I know given in the programmatic QnA API docs it demonstrates how to add a PDF file that’s already also available online as well:



          "files": [
          {
          "fileName": "SurfaceManual.pdf",
          "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf"
          }


          However when I tried using “POST Create Knowledgebase “ in Postman using the relative file path in the “fileUri”, I get “invalid uri” error.



          Request Body



          {
          "name": "Simple QnA",
          "files": [
          {
          "fileName": "simpleQnaSource.docx",
          "fileUri": "C:\Users\v-asho\Documents\RandomWordDocs"
          }
          ]
          }


          Response



          {
          "error": {
          "code": "BadArgument",
          "message": "Invalid input. See details.",
          "details": [
          {
          "code": "ValidationFailure",
          "message": "File Uri has one or more invalid uri.",
          "target": "Files[0].FileUri"
          }
          ]
          }
          }


          Uploading the .docx file online through qnamaker.ai portal successfully creates a KB, it’s specifically through the programmatic api where I’m having issues.





          QnA Team's Answer:



          fileUri” can have a publicly available and downloadable URI as value.
          When using it via API, please upload the contents of local file to a publicly available domain. (Example: Azure storage blob shared to public).






          share|improve this answer













          Connected with the QnA team directly, asking the following:



          Question: Is it possible to use a local file path to create KB through the programmatic API?



          I know given in the programmatic QnA API docs it demonstrates how to add a PDF file that’s already also available online as well:



          "files": [
          {
          "fileName": "SurfaceManual.pdf",
          "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf"
          }


          However when I tried using “POST Create Knowledgebase “ in Postman using the relative file path in the “fileUri”, I get “invalid uri” error.



          Request Body



          {
          "name": "Simple QnA",
          "files": [
          {
          "fileName": "simpleQnaSource.docx",
          "fileUri": "C:\Users\v-asho\Documents\RandomWordDocs"
          }
          ]
          }


          Response



          {
          "error": {
          "code": "BadArgument",
          "message": "Invalid input. See details.",
          "details": [
          {
          "code": "ValidationFailure",
          "message": "File Uri has one or more invalid uri.",
          "target": "Files[0].FileUri"
          }
          ]
          }
          }


          Uploading the .docx file online through qnamaker.ai portal successfully creates a KB, it’s specifically through the programmatic api where I’m having issues.





          QnA Team's Answer:



          fileUri” can have a publicly available and downloadable URI as value.
          When using it via API, please upload the contents of local file to a publicly available domain. (Example: Azure storage blob shared to public).







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Dec 14 '18 at 16:49









          ZerythZeryth

          45419




          45419













          • Thanks, @Zeryth. Finally, I had to use the blob too.

            – Vivek Jain
            Dec 17 '18 at 15:41



















          • Thanks, @Zeryth. Finally, I had to use the blob too.

            – Vivek Jain
            Dec 17 '18 at 15:41

















          Thanks, @Zeryth. Finally, I had to use the blob too.

          – Vivek Jain
          Dec 17 '18 at 15:41





          Thanks, @Zeryth. Finally, I had to use the blob too.

          – Vivek Jain
          Dec 17 '18 at 15:41


















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53434405%2fhow-to-send-a-local-file-path-thorugh-the-qna-create-knowledgebase-api%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Costa Masnaga

          Fotorealismo

          Sidney Franklin