tool (retrieveData)

Parent: tool

Applies whentype = retrieveData

Direct Properties:

PropertyTypeRequiredDefault ValueDetails
namestringYesdata type=string; maxLen=64; textCase=LOWER
typeenumYesdata type=string; lov=PLUGINS
Valid values: retrieveData
executionPointenumYesdata type=string; lov=STATIC
Valid values: augmentSystemPrompt onDemand
descriptionmultiline stringNodata type=multiline string; maxLen=4000
Applies whenexecutionPoint = onDemand

Property Groups:

  • settings
  • userApproval
  • notification
  • advanced
  • serverSideCondition
  • security
  • config
  • comments
settings
PropertyTypeRequiredDefault ValueDetails
dataDescriptionstringNodata type=string; maxLen=4000
typeenumYessqlQuerydata type=string; maxLen=4000; lov=STATIC
Valid values: static sqlQuery functionBody
sqlQuerystringYesdata type=string; maxLen=4000
Applies whentype = SQL_QUERY
languageenumYesdata type=string; lov=STATIC
Valid values: plsql js-mle
Applies whentype = FUNCTION_BODY
plsqlFunctionBodystringYesdata type=string; maxLen=4000
Applies whentype = FUNCTION_BODY and language = PLSQL
jsFunctionBodystringYesdata type=string; maxLen=4000
Applies whentype = FUNCTION_BODY and language = JAVASCRIPT
textstringYesdata type=string; maxLen=4000
Applies whentype = STATIC
maxTokensintegerNodata type=integer
Applies whentype = SQL_QUERY
settings {
  dataDescription: value
  type: static
  sqlQuery: value
  language: plsql
  plsqlFunctionBody: value
  jsFunctionBody: value
  text: value
  maxTokens: 42
}
userApproval
PropertyTypeRequiredDefault ValueDetails
requiresConfirmationbooleanYesfalsedata type=boolean
Applies whenexecutionPoint = onDemand
titlestringNodata type=string; maxLen=255
Applies whenexecutionPoint = onDemand and requiresConfirmation = true
messagemultiline stringYesdata type=multiline string; maxLen=4000
Applies whenexecutionPoint = onDemand and requiresConfirmation = true
confirmLabelstringNodata type=string; maxLen=255
Applies whenexecutionPoint = onDemand and requiresConfirmation = true
cancelLabelstringNodata type=string; maxLen=255
Applies whenexecutionPoint = onDemand and requiresConfirmation = true
userApproval {
  requiresConfirmation: false
  title: value
  message: ```
    value
  ```
  confirmLabel: value
  cancelLabel: value
}
notification
PropertyTypeRequiredDefault ValueDetails
messagemultiline stringNodata type=multiline string; maxLen=4000
Applies whenexecutionPoint = onDemand
typeenumNodata type=string; lov=STATIC
Valid values: info success
Applies whenexecutionPoint = onDemand and message is set
notification {
  message: ```
    value
  ```
  type: info
}
advanced
PropertyTypeRequiredDefault ValueDetails
staticIdstringYesdata type=string; maxLen=255
Enter a unique Static ID to identify this component in API calls or refer to it in application export files. If you change the Static ID, dependent components will retain their references, but any existing API calls using the old ID must be updated manually.
advanced {
  staticId: value
}
serverSideCondition
PropertyTypeRequiredDefault ValueDetails
typeenumNodata type=string; lov=STATIC
Valid values: anyUserPromptContains lastUserPromptContains rowsReturned noRowsReturned expression functionBody never

Select a condition type that must be met in order for the Augment System Prompt tool to be executed, or the On Demand tool to be made available to the AI Service.

For the condition types Any User Prompt contains and Last User Prompt contains, provide a comma-separated list of words to check for their presence in the user's prompt.

In programmatic contexts, you can use the following special bind variables to access and evaluate the user's prompt:

APEX$AI_LAST_USER_PROMPT: Contains the most recent user-entered prompt.

APEX$AI_ALL_USER_PROMPTS: Contains all user prompts, concatenated into a single string.

sqlQuerymultiline stringYesdata type=multiline string; maxLen=4000
Applies whentype in (rowsReturned)type in (noRowsReturned)
languageenumYesplsqldata type=string; lov=STATIC
Valid values: sql plsql javaScript-mle
Applies whentype = expression
sqlExpressionmultiline stringYesdata type=multiline string; maxLen=4000
Applies whentype = expression and language = sql
plsqlExpressionmultiline stringYesdata type=multiline string; maxLen=4000
Applies whentype = expression and language = plsql
javaScriptExpressionmultiline stringYesdata type=multiline string; maxLen=4000
Applies whentype = expression and language = javaScript-mle
languageenumYesplsqldata type=string; lov=STATIC
Valid values: plsql javaScript-mle
Applies whentype = functionBody
plsqlFunctionBodymultiline stringYesdata type=multiline string; maxLen=4000
Applies whentype = functionBody and language = plsql
javaScriptFunctionBodymultiline stringYesdata type=multiline string; maxLen=4000
Applies whentype = functionBody and language = javaScript-mle
listarray of stringsYesdata type=string; maxLen=4000
Applies whentype in (anyUserPromptContains)type in (lastUserPromptContains)
serverSideCondition {
  type: anyUserPromptContains
  sqlQuery: ```sql
    value
  ```
  language: sql
  sqlExpression: ```sql
    value
  ```
  plsqlExpression: ```plsql
    value
  ```
  javaScriptExpression: ```javascript-mle
    value
  ```
  plsqlFunctionBody: ```plsql
    value
  ```
  javaScriptFunctionBody: ```javascript-mle
    value
  ```
  list: [
    value
    value
  ]
}
security
PropertyTypeRequiredDefault ValueDetails
authorizationSchemeenumNodata type=reference; lov=COMPONENT; references=authorization
Valid values: mustNotBePublicUser
security {
  authorizationScheme: mustNotBePublicUser
}
config
PropertyTypeRequiredDefault ValueDetails
buildOptionreferenceNodata type=reference; lov=COMPONENT; references=buildOption
config {
  buildOption: @component
}
comments
PropertyTypeRequiredDefault ValueDetails
commentsmultiline stringNodata type=multiline string; maxLen=4000
comments {
  comments: ```
    value
  ```
}

APEXlang Example

tool sample (
    name: value
    type: retrieveData
    executionPoint: augmentSystemPrompt
    description: ```
      value
    ```
    settings {
        dataDescription: value
        type: static
        sqlQuery: value
        language: plsql
        plsqlFunctionBody: value
        jsFunctionBody: value
        text: value
        maxTokens: 42
    }
    userApproval {
        requiresConfirmation: false
        title: value
        message: ```
          value
        ```
        confirmLabel: value
        cancelLabel: value
    }
    notification {
        message: ```
          value
        ```
        type: info
    }
    advanced {
        staticId: value
    }
    serverSideCondition {
        type: anyUserPromptContains
        sqlQuery: ```sql
          value
        ```
        language: sql
        sqlExpression: ```sql
          value
        ```
        plsqlExpression: ```plsql
          value
        ```
        javaScriptExpression: ```javascript-mle
          value
        ```
        plsqlFunctionBody: ```plsql
          value
        ```
        javaScriptFunctionBody: ```javascript-mle
          value
        ```
        list: [
          value
          value
        ]
    }
    security {
        authorizationScheme: mustNotBePublicUser
    }
    config {
        buildOption: @component
    }
    comments {
        comments: ```
          value
        ```
    }
)