Inputs are the sources which Alooma pulls data from. Examples of inputs are webhooks, databases, and cloud applications.

Inputs.__init__(api, preview_full=True, preview_changes=True, apply_changes=False, pprint_indent=2, pprint_width=250, pprint_depth=5)

View, created and edit Alooma inputs. Inputs are the source of data to bring into Alooma. The class is initiated with the following variables:

  • api – The Alooma API client authentication
  • preview_full – Prints the input and changed input if True
  • preview_changes – Prints the changes in the input by category if True
  • apply_changes – Executes the mapping changes if True
  • pprint_indent – The indent value to pprint dictionaries
  • pprint_width – The width value to pprint dictionaries
  • pprint_depth – The depth value to pprint dictionaries

Get All Inputs


Gets the information for all inputs from Alooma

Returns:A list of dictionaries with information for each input

Get Input


Gets the input information for a specific input

Parameters:input_name – The name of the input to retrieve
Returns:A dictionary with the input

View Inputs

Inputs.view_inputs(single_input=None, print_format='table')

Prints a data from with the event info

  • single_input – string The name of a specific input to filter the results
  • print_format – string ‘table’ to print event info as tables or ‘json’ to print as dictionaries

The list of input dictionaries

Delete Input


Delete an input. This can not be undone!

Parameters:input_name – The name of the input to delete

Pause Input


Pause the input from pulling data

Parameters:input_name – The name of the input to pause

Resume Input


Resume the input so it will pull date

Parameters:input_name – The name of the input to resume pulling data

List Inputs


Prints and/or returns a list of input names

  • print_lst – boolean True to print the list to the console
  • add_quotes_commas – boolean True to print the list to the console with single quotes around strings and commas between each name

list of the names of inputs

List Tables


Prints and/or returns the list of tables in an input

Parameters:single_input – string The input for which to print or return the tables
Returns:The list if tables in an input

Create Input Database

Inputs.create_input_database(source_credentials, new_input_name, existing_input, tables_dict=None, auto_map=True, input_default_schema=None, replication_type='incremental_load', batch_size=100000)

Create a new input with a database as the source

  • source_credentials – The database credentials and configuration for the source
  • new_input_name – The name of the new input
  • existing_input – The name of the existing input from which to copy the configuration
  • tables_dict – A dictionary containing the tables to replicate and the update indicator such as {“table_name”: “xmin::text::bigint”}
  • auto_map – True if the input should be auto-mapped
  • input_default_schema – The default schema for the data in the target database
  • replication_type – The type of replication to apply
  • batch_size – The number of rows to pull in each batch


Example database source credentials:

{'server': 'server_name',
 'schema': 'schema_name',
 'port': 'port',
 'database': 'database',
 'db_type': 'psql',
 'user': 'username',
 'password': 'password'}

Edit Input Configuration

Inputs.edit_input_configuration(input_name=None, field_to_edit=None, new_field_value=None)

Edit a single field in an input configuration at a time

  • input_name – The name of the input to edit
  • field_to_edit – The name of the field to edit
  • new_field_value – The new value for the field


Add Table to Input

Inputs.add_table_to_input(input_name, new_table_dict={})

Add tables to an existing input

  • input_name – The name of the input to add tables to
  • new_table_dict – A dictionary with the tables to add and their update field such as {“table_name”: “xmin::text::bigint”}


Change Auto Mapping Mode

Inputs.change_auto_mapping_mode(input_name=None, new_mapping_mode=False)

Edit a single field in an input configuration at a time

  • input_name – The name of the input to alter
  • new_mapping_mode – The new automapping mapping mode to set of True or False


Add Template to Parameter Configuration

Inputs.add_template_to_parameter_configuration(input_name, add_to_parameter, template)

Add a template to single parameter or a list of parameters in an input configuration

  • input_name – The input to add template to
  • add_to_parameter – a single parameter or a list of parameters that you want to add template to
  • template – e.g. ‘%Y-%m-%d’


Edit Parameter Configuration

Inputs.edit_parameter_configuration(input_name, parameter_to_edit, value_to_set, new_value)

edit API parameter value, e.g. changing days past value from 100 to 10

  • input_name – The input to make the change for
  • parameter_to_edit – a single parameter that you want to edit
  • value_to_set – name of the field you want to edit
  • new_value – new value you want to set


Preview Input Changes

Inputs.preview_input_changes(input, new_input, show_matching, show_changed, show_removed, show_added)

Takes an original mapping and altered mapping and prints various views on the changes

  • input – A dictionary representing the current state of the mapping
  • new_input – An altered dictionary representing the changed state of the mapping
  • show_matching – Show the key value pairs that match between the two mappings
  • show_changed – Show the key value pairs that have been changed between the two mappings
  • show_removed – Show the key value pairs that were removed from the current state of the mapping
  • show_added – Show the key value paids that were added to the changed state of the mapping


Apply Input Changes

Inputs.apply_input_changes(input, print_message)

Apply the input changes in the Alooma API

  • input – The new input to set
  • print_message – A message to print after a successful change