QBusiness / Client / create_plugin

create_plugin#

QBusiness.Client.create_plugin(**kwargs)#

Creates an Amazon Q Business plugin.

See also: AWS API Documentation

Request Syntax

response = client.create_plugin(
    applicationId='string',
    displayName='string',
    type='SERVICE_NOW'|'SALESFORCE'|'JIRA'|'ZENDESK'|'CUSTOM',
    authConfiguration={
        'basicAuthConfiguration': {
            'secretArn': 'string',
            'roleArn': 'string'
        },
        'oAuth2ClientCredentialConfiguration': {
            'secretArn': 'string',
            'roleArn': 'string'
        },
        'noAuthConfiguration': {}

    },
    serverUrl='string',
    customPluginConfiguration={
        'description': 'string',
        'apiSchemaType': 'OPEN_API_V3',
        'apiSchema': {
            'payload': 'string',
            's3': {
                'bucket': 'string',
                'key': 'string'
            }
        }
    },
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ],
    clientToken='string'
)
Parameters:
  • applicationId (string) –

    [REQUIRED]

    The identifier of the application that will contain the plugin.

  • displayName (string) –

    [REQUIRED]

    A the name for your plugin.

  • type (string) –

    [REQUIRED]

    The type of plugin you want to create.

  • authConfiguration (dict) –

    [REQUIRED]

    Authentication configuration information for an Amazon Q Business plugin.

    Note

    This is a Tagged Union structure. Only one of the following top level keys can be set: basicAuthConfiguration, oAuth2ClientCredentialConfiguration, noAuthConfiguration.

    • basicAuthConfiguration (dict) –

      Information about the basic authentication credentials used to configure a plugin.

      • secretArn (string) – [REQUIRED]

        The ARN of the Secrets Manager secret that stores the basic authentication credentials used for plugin configuration..

      • roleArn (string) – [REQUIRED]

        The ARN of an IAM role used by Amazon Q Business to access the basic authentication credentials stored in a Secrets Manager secret.

    • oAuth2ClientCredentialConfiguration (dict) –

      Information about the OAuth 2.0 authentication credential/token used to configure a plugin.

      • secretArn (string) – [REQUIRED]

        The ARN of the Secrets Manager secret that stores the OAuth 2.0 credentials/token used for plugin configuration.

      • roleArn (string) – [REQUIRED]

        The ARN of an IAM role used by Amazon Q Business to access the OAuth 2.0 authentication credentials stored in a Secrets Manager secret.

    • noAuthConfiguration (dict) –

      Information about invoking a custom plugin without any authentication.

  • serverUrl (string) – The source URL used for plugin configuration.

  • customPluginConfiguration (dict) –

    Contains configuration for a custom plugin.

    • description (string) – [REQUIRED]

      A description for your custom plugin configuration.

    • apiSchemaType (string) – [REQUIRED]

      The type of OpenAPI schema to use.

    • apiSchema (dict) – [REQUIRED]

      Contains either details about the S3 object containing the OpenAPI schema for the action group or the JSON or YAML-formatted payload defining the schema.

      Note

      This is a Tagged Union structure. Only one of the following top level keys can be set: payload, s3.

      • payload (string) –

        The JSON or YAML-formatted payload defining the OpenAPI schema for a custom plugin.

      • s3 (dict) –

        Contains details about the S3 object containing the OpenAPI schema for a custom plugin. The schema could be in either JSON or YAML format.

        • bucket (string) – [REQUIRED]

          The name of the S3 bucket that contains the file.

        • key (string) – [REQUIRED]

          The name of the file.

  • tags (list) –

    A list of key-value pairs that identify or categorize the data source connector. You can also use tags to help control access to the data source connector. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

    • (dict) –

      A list of key/value pairs that identify an index, FAQ, or data source. Tag keys and values can consist of Unicode letters, digits, white space, and any of the following symbols: _ . : / = + - @.

      • key (string) – [REQUIRED]

        The key for the tag. Keys are not case sensitive and must be unique for the Amazon Q Business application or data source.

      • value (string) – [REQUIRED]

        The value associated with the tag. The value may be an empty string but it can’t be null.

  • clientToken (string) –

    A token that you provide to identify the request to create your Amazon Q Business plugin.

    This field is autopopulated if not provided.

Return type:

dict

Returns:

Response Syntax

{
    'pluginId': 'string',
    'pluginArn': 'string',
    'buildStatus': 'READY'|'CREATE_IN_PROGRESS'|'CREATE_FAILED'|'UPDATE_IN_PROGRESS'|'UPDATE_FAILED'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'
}

Response Structure

  • (dict) –

    • pluginId (string) –

      The identifier of the plugin created.

    • pluginArn (string) –

      The Amazon Resource Name (ARN) of a plugin.

    • buildStatus (string) –

      The current status of a plugin. A plugin is modified asynchronously.

Exceptions

  • QBusiness.Client.exceptions.ResourceNotFoundException

  • QBusiness.Client.exceptions.InternalServerException

  • QBusiness.Client.exceptions.ConflictException

  • QBusiness.Client.exceptions.ThrottlingException

  • QBusiness.Client.exceptions.ValidationException

  • QBusiness.Client.exceptions.AccessDeniedException

  • QBusiness.Client.exceptions.ServiceQuotaExceededException