Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

The public API is exposed as part of the BusinessGPT Firewall.

Getting API KEY

The API allows sending requests to AI service through HTTP requests.

Each user has a unique API key to authenticate the API. The API key is viewed on the User Settings page in the dashboard. You need to copy it and send in the request.

image-20240425-105400.png

Chat service - POST request

POST: https://[firewall API address]/firewallApi/v1/chat

Sample URL for BGD10 environment:
https://bgd10-firewall.agatdemo.com/firewallApi/v1/alive

Allows to send prompt to the AI and receive response based on some particular content or all company data

Input parameters - should be sent as JSON:

  • APIKey

  • Prompt

  • PromptScope (Content, Collection, All)

  • PromptScopeId (id of the content or the collection, not needed for All)

  • AIModel (optional. Default will be as for the user. Available values: GPT3_5, GPT4)

  • ChatId (optional): If provided, the question will be added to the existing chat with an external chat ID that equals the provided value. If no chat exists, a new one will be created.

  • MaxWordsInAnswer (optional) - If provided it should limit the number of words in the answer. The min word limit is 5.

Output - for HTTP status OK (200):

  • PromptId

  • Response

In case of an error, it will return an error message.

image-20240425-105445.png

How do you find the ID of the collection or content item for the “PromptScopeId” parameter?

To find the ID triple-click the line to get some system info:

ProjectID is the collection ID:

image-20240617-075711.png

For a document it is the contentID as in the image below

image-20240617-075813.png

Upload service - POST request

POST: https://[firewall API address]/firewallApi/v1/upload

Sample URL for BGD10 environment:
https://bgd10-firewall.agatdemo.com/firewallApi/v1/upload

Allows to send file to the AI to be saved in BusinessGPT and receive its ID.

Input parameters - should be sent as form-data:

  • APIKey

  • FileName

  • FileContent - binary

  • ContentSourceName (optional)- The name of the client using the API (for example, File loader)

  • ContentSourceIP (optional)- The IP of the client using the API (for example the host of the File loader)

  • AllowedGroups -a comma-separated list of group names with file permission

  • AllowedEmail - a comma-separated list of words with file permission

Output - for HTTP status OK (200):

  • ContentId

In case of an error, it will return an error message.

image-20240819-102430.png

Get classifications service - GET request

GET: https://[firewall API address]/firewallApi/v1/getClassifications

Sample URL for BGD10 environment:
https://bgd10-firewall.agatdemo.com/firewallApi/v1/getClassifications

Allows to get status and classifications of content.

Input parameters - should be sent as JSON:

  • APIKey

  • ContentId

Output - for HTTP status OK (200):

  • EmbeddingStatus- of the content (document) - New/SentToQueue/Processing/Done/Failed

  • Classifications(only if embedding status is Done) - list of classifications found for the content, by rule type (AI/Regular). Each classification contains the following fields:

    • RuleType - AI/Regular

    • Status - New/Processing/Done/Error/Skip

    • ClassificationRules (only if status is Done) - list of rules of the specified type that were matched for the content. Each rule contains the following fields:

      • RuleName

      • RuleDescription

      • RulePurpose

      • RuleType

      • SensitivityLevel

      • RuleValue

In case of an error, it will return an error message.

image-20240617-102310.png

Healthcheck service - GET request

GET: https://[firewall API address]/firewallApi/v1/alive

Sample URL for BGD10 environment:
https://bgd10-firewall.agatdemo.com/firewallApi/v1/alive

image-20240507-121218.png

Postman Samples for all APIs

Attached is the Postman collection with example requests.

  • No labels