Returns the integrations Resource.
Close httplib2 connections.
generateIntegration(parent, body=None, x__xgafv=None)
Generates an integration skeleton based on a natural language prompt.
close()
Close httplib2 connections.
generateIntegration(parent, body=None, x__xgafv=None)
Generates an integration skeleton based on a natural language prompt.
Args:
parent: string, Required. The location in which the integration will be generated. Format: `projects/{project}/locations/{location}` (required)
body: object, The request body.
The object takes the form of:
{ # Request for generating an integration.
"copilotEnabled": True or False, # Optional. Indicates if copilot is enabled. Copilot features may alter the generated integration structure.
"prompt": "A String", # Required. The natural language prompt based on which the integration will be generated.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response for generating an integration.
"skeletonIntegrations": [ # The list of integration skeletons returned.
{ # An integration skeleton containing basic fields which can be used to create an integration on the UI.
"explanation": "A String", # Explanation of why this integration was generated.
"integrationVersion": { # The integration version definition. # The integration version containing basic triggers and tasks.
"description": "A String", # Optional. The integration description.
"errorCatcherConfigs": [ # Optional. Error Catch Task configuration for the integration. It's optional.
{ # Configuration detail of a error catch task
"description": "A String", # Optional. User-provided description intended to give more business context about the error catcher config.
"errorCatcherId": "A String", # Required. An error catcher id is string representation for the error catcher config. Within a workflow, error_catcher_id uniquely identifies an error catcher config among all error catcher configs for the workflow
"errorCatcherNumber": "A String", # Required. A number to uniquely identify each error catcher config within the workflow on UI.
"label": "A String", # Optional. The user created label for a particular error catcher. Optional.
"startErrorTasks": [ # Required. The set of start tasks that are to be executed for the error catch flow
{ # The task that is next in line to be executed, if the condition specified evaluated to true.
"condition": "A String", # Standard filter expression for this task to become an eligible next task.
"description": "A String", # User-provided description intended to give additional business context about the task.
"displayName": "A String", # User-provided label that is attached to this edge in the UI.
"taskConfigId": "A String", # ID of the next task.
"taskId": "A String", # Task number of the next task.
},
],
},
],
"integrationConfigParameters": [ # Optional. Config Parameters that are expected to be passed to the integration when an integration is published. This consists of all the parameters that are expected to provide configuration in the integration execution. This gives the user the ability to provide default values, value, add information like connection url, project based configuration value and also provide data types of each parameter.
{ # Integration Config Parameter is defined in the integration config and are used to provide external configuration for integration. It provide information about data types of the expected parameters and provide any default values or value. They can also be used to add custom attributes.
"parameter": { # Integration Parameter is defined in the integration config and are used to provide information about data types of the expected parameters and provide any default values if needed. They can also be used to add custom attributes. These are static in nature and should not be used for dynamic event definition. # Optional. Integration Parameter to provide the default value, data type and attributes required for the Integration config variables.
"dataType": "A String", # Type of the parameter.
"defaultValue": { # The type of the parameter. # Default values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
"booleanArray": { # This message only contains a field of boolean array. # Boolean Array.
"booleanValues": [ # Boolean array.
True or False,
],
},
"booleanValue": True or False, # Boolean.
"doubleArray": { # This message only contains a field of double number array. # Double Number Array.
"doubleValues": [ # Double number array.
3.14,
],
},
"doubleValue": 3.14, # Double Number.
"intArray": { # This message only contains a field of integer array. # Integer Array.
"intValues": [ # Integer array.
"A String",
],
},
"intValue": "A String", # Integer.
"jsonValue": "A String", # Json.
"stringArray": { # This message only contains a field of string array. # String Array.
"stringValues": [ # String array.
"A String",
],
},
"stringValue": "A String", # String.
},
"description": "A String", # Optional. Description of the parameter.
"displayName": "A String", # The name (without prefix) to be displayed in the UI for this parameter. E.g. if the key is "foo.bar.myName", then the name would be "myName".
"inputOutputType": "A String", # Specifies the input/output type for the parameter.
"isTransient": True or False, # Whether this parameter is a transient parameter.
"jsonSchema": "A String", # This schema will be used to validate runtime JSON-typed values of this parameter.
"key": "A String", # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
},
"value": { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
"booleanArray": { # This message only contains a field of boolean array. # Boolean Array.
"booleanValues": [ # Boolean array.
True or False,
],
},
"booleanValue": True or False, # Boolean.
"doubleArray": { # This message only contains a field of double number array. # Double Number Array.
"doubleValues": [ # Double number array.
3.14,
],
},
"doubleValue": 3.14, # Double Number.
"intArray": { # This message only contains a field of integer array. # Integer Array.
"intValues": [ # Integer array.
"A String",
],
},
"intValue": "A String", # Integer.
"jsonValue": "A String", # Json.
"stringArray": { # This message only contains a field of string array. # String Array.
"stringValues": [ # String array.
"A String",
],
},
"stringValue": "A String", # String.
},
},
],
"integrationParameters": [ # Optional. Parameters that are expected to be passed to the integration when an event is triggered. This consists of all the parameters that are expected in the integration execution. This gives the user the ability to provide default values, add information like PII and also provide data types of each parameter.
{ # Integration Parameter is defined in the integration config and are used to provide information about data types of the expected parameters and provide any default values if needed. They can also be used to add custom attributes. These are static in nature and should not be used for dynamic event definition.
"dataType": "A String", # Type of the parameter.
"defaultValue": { # The type of the parameter. # Default values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
"booleanArray": { # This message only contains a field of boolean array. # Boolean Array.
"booleanValues": [ # Boolean array.
True or False,
],
},
"booleanValue": True or False, # Boolean.
"doubleArray": { # This message only contains a field of double number array. # Double Number Array.
"doubleValues": [ # Double number array.
3.14,
],
},
"doubleValue": 3.14, # Double Number.
"intArray": { # This message only contains a field of integer array. # Integer Array.
"intValues": [ # Integer array.
"A String",
],
},
"intValue": "A String", # Integer.
"jsonValue": "A String", # Json.
"stringArray": { # This message only contains a field of string array. # String Array.
"stringValues": [ # String array.
"A String",
],
},
"stringValue": "A String", # String.
},
"description": "A String", # Optional. Description of the parameter.
"displayName": "A String", # The name (without prefix) to be displayed in the UI for this parameter. E.g. if the key is "foo.bar.myName", then the name would be "myName".
"inputOutputType": "A String", # Specifies the input/output type for the parameter.
"isTransient": True or False, # Whether this parameter is a transient parameter.
"jsonSchema": "A String", # This schema will be used to validate runtime JSON-typed values of this parameter.
"key": "A String", # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
},
],
"name": "A String", # Optional. Auto-generated primary key.
"snapshotNumber": "A String", # Optional. An increasing sequence that is set when a new snapshot is created. The last created snapshot can be identified by [workflow_name, org_id latest(snapshot_number)]. However, last created snapshot need not be same as the HEAD. So users should always use "HEAD" tag to identify the head.
"state": "A String", # Output only. User should not set it as an input.
"taskConfigs": [ # Optional. Task configuration for the integration. It's optional, but the integration doesn't do anything without task_configs.
{ # The task configuration details. This is not the implementation of Task. There might be multiple TaskConfigs for the same Task.
"description": "A String", # Optional. User-provided description intended to give additional business context about the task.
"displayName": "A String", # Optional. User-provided label that is attached to this TaskConfig in the UI.
"errorCatcherId": "A String", # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
"externalTaskType": "A String", # Optional. External task type of the task
"nextTasks": [ # Optional. The set of tasks that are next in line to be executed as per the execution graph defined for the parent event, specified by `event_config_id`. Each of these next tasks are executed only if the condition associated with them evaluates to true.
{ # The task that is next in line to be executed, if the condition specified evaluated to true.
"condition": "A String", # Standard filter expression for this task to become an eligible next task.
"description": "A String", # User-provided description intended to give additional business context about the task.
"displayName": "A String", # User-provided label that is attached to this edge in the UI.
"taskConfigId": "A String", # ID of the next task.
"taskId": "A String", # Task number of the next task.
},
],
"parameters": { # Optional. The customized parameters the user can pass to this task.
"a_key": { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus.
"key": "A String", # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
"value": { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
"booleanArray": { # This message only contains a field of boolean array. # Boolean Array.
"booleanValues": [ # Boolean array.
True or False,
],
},
"booleanValue": True or False, # Boolean.
"doubleArray": { # This message only contains a field of double number array. # Double Number Array.
"doubleValues": [ # Double number array.
3.14,
],
},
"doubleValue": 3.14, # Double Number.
"intArray": { # This message only contains a field of integer array. # Integer Array.
"intValues": [ # Integer array.
"A String",
],
},
"intValue": "A String", # Integer.
"jsonValue": "A String", # Json.
"stringArray": { # This message only contains a field of string array. # String Array.
"stringValues": [ # String array.
"A String",
],
},
"stringValue": "A String", # String.
},
},
},
"task": "A String", # Optional. The name for the task.
"taskId": "A String", # Required. The identifier of this task within its parent event config, specified by the client. This should be unique among all the tasks belong to the same event config. We use this field as the identifier to find next tasks (via field `next_tasks.task_id`).
},
],
"triggerConfigs": [ # Optional. Trigger configurations.
{ # Configuration detail of a trigger.
"cloudSchedulerConfig": { # Cloud Scheduler Trigger configuration # Optional. Cloud Scheduler Trigger related metadata
"cronTab": "A String", # Required. The cron tab of cloud scheduler trigger.
"errorMessage": "A String", # Optional. When the job was deleted from Pantheon UI, error_message will be populated when Get/List integrations
"location": "A String", # Required. The location where associated cloud scheduler job will be created
"serviceAccountEmail": "A String", # Required. Service account used by Cloud Scheduler to trigger the integration at scheduled time
},
"description": "A String", # Optional. User-provided description intended to give additional business context about the task.
"errorCatcherId": "A String", # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
"inputVariables": { # Variables names mapped to api trigger. # Optional. List of input variables for the api trigger.
"names": [ # Optional. List of variable names.
"A String",
],
},
"label": "A String", # Optional. The user created label for a particular trigger.
"outputVariables": { # Variables names mapped to api trigger. # Optional. List of output variables for the api trigger.
"names": [ # Optional. List of variable names.
"A String",
],
},
"properties": { # Optional. Configurable properties of the trigger, not to be confused with integration parameters. E.g. "name" is a property for API triggers and "subscription" is a property for Pub/sub triggers.
"a_key": "A String",
},
"startTasks": [ # Optional. Set of tasks numbers from where the integration execution is started by this trigger. If this is empty, then integration is executed with default start tasks. In the list of start tasks, none of two tasks can have direct ancestor-descendant relationships (i.e. in a same integration execution graph).
{ # The task that is next in line to be executed, if the condition specified evaluated to true.
"condition": "A String", # Standard filter expression for this task to become an eligible next task.
"description": "A String", # User-provided description intended to give additional business context about the task.
"displayName": "A String", # User-provided label that is attached to this edge in the UI.
"taskConfigId": "A String", # ID of the next task.
"taskId": "A String", # Task number of the next task.
},
],
"trigger": "A String", # Optional. Name of the trigger. Example: "API Trigger", "Cloud Pub Sub Trigger" When set will be sent out to monitoring dashabord for tracking purpose.
"triggerId": "A String", # Optional. The backend trigger ID.
"triggerNumber": "A String", # Required. A number to uniquely identify each trigger config within the integration on UI.
"triggerType": "A String", # Optional. Type of trigger
},
],
"userLabel": "A String", # Optional. A user-defined label that annotates an integration version. Typically, this is only set when the integration version is created.
},
"name": "A String", # The name of the integration.
"tag": "A String", # Indicate the strategy/methodology used to generate the integration.
},
],
}