Insight REST API client
Topics covered in this chapter:
- Introduction
- REST Client Configuration
- Data Model Types
- Dictionaries
- Apps Operations
- Attachments Operations
- Authentication Operations
- ComputeJobs Operations
- ExecutionAdmin Operations
- Folders Operations
- HealthCheck Operations
- JobLogAdmin Operations
- Jobs Operations
- MirrorAdmin Operations
- Portations Operations
- Repository Operations
- Scenarios Operations
- UserAdmin Operations
Introduction
The mminsightrestapi package implements a client for making calls to the Insight v5 REST webservice interfaces. You can use mminsightrestapi to create/update/delete apps, folders and scenarios; to read or write entity data, and to perform any other operation that is supported by the Insight REST webservices.
mminsightrestapi can be used both inside and outside of Insight apps. When used within an Insight scenario, there is no relationship between the calls made through mminsightrestapi and the currently running scenario (any reads/writes behave as though they came from outside of the scenario).
The mminsightrestapi subroutines and data structures implement a direct mapping to the Insight v5 REST webservice operations; it's recommended this package is only used where the required operation is not supported by the mminsightscenario package.
Initialization
Before making any calls to the webservices, you must initialize an insightapi2~insightconfig value with the URL of the Insight server, for example:
parameters INSIGHT_URL="http://localhost:8080/" end-parameters declarations cfg: insightapi2~insightconfig end-declarations insightapi2~insightconfig_init(cfg, INSIGHT_URL)
Provided that Mosel restrictions are not active, the package will automatically read your Insight REST API credentials from the Windows Credential Manager, or the Mac Keychain, or an encrypted file on Linux - consult the below section Providing REST API credentials for instructions on how to do this.
If you are not able to provide credentials securely using the Credential Manager / Keychain / etc, you can pass them to the insightapi2~insightconfig_init procedure directly, for example:
parameters INSIGHT_URL="http://localhost:8080/" CLIENT_ID="" SECRET="" end-parameters declarations cfg: insightapi2~insightconfig end-declarations insightapi2~insightconfig_init(cfg, INSIGHT_URL, CLIENT_ID, SECRET)
If your code is executing within an Insight 5 app on DMP, you can initialize the insightapi2~insightconfig using a populated dmpresource value, e.g.
declarations cfg: insightapi2~insightconfig comp: dmpresource end-declarations ! Populate dmpresource for current Insight component dmpinitcomp(comp, getdmpcompid, "Xpress Insight", "", getdmplifecycleenv) if comp.status<>DMP_OK then writeln('Error initializing dmpresource: ', comp.lasterror) exit(1) end-if ! Pass component details to insightconfig_init insightapi2~insightconfig_init(cfg, comp)
Once the insightapi2~insightconfig value is initialized, it should be passed to all requests to the Insight server, e.g.:
declarations apps: insightapi2~page_of_app end-declarations apps := insightapi2~get_apps(cfg, 0, 1000)
The credentials will not be validated until the first call to an Insight webservice operation - it is not possible for the call to insightapi2~insightconfig_init to fail.
Design Patterns
The mminsightrestapi package is derived directly from the public Insight OpenAPI specification and therefore is not aligned with normal Mosel design patterns in terms of type and function naming and record behaviour. For each operation supported by the Insight webservice interface, the package offers several subroutines that differ in what arguments are required. Each takes an insightapi2~insightconfig value containing details of the Insight webservices to use, and returns the expected return type of a 'successful' call (e.g. insightapi2~scenario in the case of insightapi2~create_scenario). The first subroutine variant takes the operation's input parameters and a insightapi2~httpresponse record into which details of the response will be written; for example to rename a scenario using this pattern:
declarations SCENARIO_ID='2926e9a1-9568-4116-84ed-2e75190bc651' fields_to_update: insightapi2~scenario updated_scenario: insightapi2~scenario resp: insightapi2~httpresponse end-declarations fields_to_update.name := 'new name' updated_scenario := insightapi2~update_scenario(cfg, SCENARIO_ID, fields_to_update, resp) if not resp.success then writeln_('ERROR renaming scenario: ',resp.errormsg) end-if
The second variant omits the insightapi2~httpresponse argument; when called in this way, the model will terminate with an error message if the operation fails, e.g.:
declarations SCENARIO_ID='2926e9a1-9568-4116-84ed-2e75190bc651' fields_to_update: insightapi2~scenario updated_scenario: insightapi2~scenario end-declarations fields_to_update.name := 'new name' updated_scenario := insightapi2~update_scenario(cfg, SCENARIO_ID, fields_to_update) ! Model will automatically terminate on failure
The final variant wraps the input parameters in an insightapi2~httprequest value; this is intended mostly for advanced use cases where you want to build up the parameters programmatically. To rename the scenario using this pattern, you would do this:
declarations SCENARIO_ID='2926e9a1-9568-4116-84ed-2e75190bc651' fields_to_update: insightapi2~scenario updated_scenario: insightapi2~scenario resp: insightapi2~httpresponse req: insightapi2~httprequest end-declarations fields_to_update.name := 'new name' req.params('id') := SCENARIO_ID req.body := fields_to_update updated_scenario := insightapi2~update_scenario(cfg, req, resp) if not resp.success then writeln_('ERROR renaming scenario: ',resp.errormsg) end-if
When making a call to an operation that returns a binary file, you should set the bodyfilename attribute of the insightapi2~httpresponse record to the path of the file to write to.
The data models of the Insight REST API have been converted into Mosel types which are described in the Data Model Types section of this document. These behave similarly to Mosel records, but have several important differences:
- All the fields are optional — unpopulated fields will return their default values if you try to access them but you can check if a field is present using the has<name> functions (e.g. to see if a insightapi2~attachment named att has a populated id field, call has_id(att)).
- All values stored in the fields are read-only — if a field contains a structured type, you must create that value in a local variable before assigning it to the field.
- You cannot use a record constructor to initialize or create new instances of any of the data model types.
The insightapi2~dictionary type (or a similar type such as insightapi2~dictionary_of_text) is used to represent a collection of named values. There is a standard pattern for accessing dictionaries where you can call insightapi2~get_value to access an individual named value but access a list of the name-value pairs in the entries field (or values if you want the values without the names). To edit the values in a dictionary, you use the insightapi2~put_value procedure.
Internally, requests to the Insight webservices are made through the dmp module and you can use the dmp_max_retries and dmp_retry_error_codes parameters to control how many times and which failed requests should be automatically retried, before returning an error to the calling code.
Providing REST API credentials
Overview
The recommended way to pass the Insight REST API credentials to the mminsightrestapi or mminsightscenario package is using your system's local secure storage. This section describes how to do this for each platform. Before adding your REST API credentials to the secure storage, you must obtain them from Insight for your account — consult the Insight 5 documentation for instructions.
You will not be able to provide credentials in this way if your Mosel will be executing in restricted mode, or on another server, or within an Insight execution worker, or within a role account. Consult the mminsightrestapi or mminsightscenario documentation for alternate ways to pass in credentials, but always remember that the client ID and secret values allow access to your account on the Insight 5 server, so must be handled securely.
Note that for Windows and Mac, this process is identical to providing REST API credentials to Workbench or to the Insight 5 Compute Interface; if you have already configured either, you do not need to repeat these steps again.
Windows
- Open the Credential Manager, by typing credential manager in the search box on the taskbar and selecting Credential Manager Control Panel.
- Select Windows Credentials to access the manager.
- In the Generic Credentials list, click Add a generic credential
- In the Internet or network address field, enter ficoxpress:<insight URL>, e.g. ficoxpress:http://localhost:8080
- In the User name field, enter the Client ID value from Insight.
- In the Secret field, enter the Client Secret value from Insight.
- Click OK, then close the Credential Manager.
Mac
- In Applications > Utilities, open the Keychain Access app on your Mac.
- Select the login keychain in the Keychains list.
- Select File > New Password Item.
- In the Keychain Item Name field, enter ficoxpress:<insight URL>, e.g. ficoxpress:http://localhost:8080
- In the Account Name field, enter the Client ID value from Insight.
- In the Password field, enter the Client Secret value from Insight.
- Click Add, then close the Keychain Access application.
Linux
On Linux, openssl tools are used to encrypt a file containing the Client id and Client secret.
To start, choose a location to save a keyfile. Set environment variable XPRESS_CREDENTIALS_DSO_AUTH_KEYFILE to the keyfile location. From the Linux bash shell, enter the following command and press Enter:
XPRESS_CREDENTIALS_DSO_AUTH_KEYFILE = keyfile_path
Note: For security, the <keyfile_path> should be on a different drive to the home directory.
Populate the key file with secure random data. Enter the following command and press Enter:
openssl rand -base64 -out $XPRESS_CREDENTIALS_DSO_AUTH_KEYFILE 48
To encrypt the Client ID and Client secret values into a file named .ficoxpress in your home directory, enter the following command, replacing CLIENTID and SECRET with the actual Client ID and Client secret values from the Insight Server:
(echo "CLIENTID" ; echo "SECRET" ) | openssl enc -aes-256-cbc -salt -md sha256 -out ~/.ficoxpress -pass file:$XPRESS_CREDENTIALS_DSO_AUTH_KEYFILE
In your Insight 5 execution worker configuration, you must configure the XPRESS_CREDENTIALS_DSO_AUTH_KEYFILE environment variable to be the same value used above.
If you wish to store the .ficoxpress file somewhere other than your home directory, you can set the XPRESS_CREDENTIALS_DSO_AUTH_DIR to the path of the alternate location.
Example: Creating a scenario
This example code demonstrates how to create a new scenario within an existing app. It assumes that cfg is an initialized insightapi2~insightconfig value and APP_ID is the ID of the app in which to create the scenario.
declarations appref: insightapi2~reference_app newscenreq: insightapi2~scenario_creation_request newscen: insightapi2~scenario resp: insightapi2~httpresponse end-declarations appref.id := APP_ID appref.object_type := 'APP' newscenreq.parent := appref newscenreq.name := 'my scenario' newscen := insightapi2~create_scenario(cfg, newscenreq, resp) if not resp.success then writeln_('ERROR creating scenario: ',resp.errormsg) exit(1) end-if writeln('Created new scenario with ID: ',newscen.id)
Example: Updating an array
This example code demonstrates how to fetch the an entity 'prices' of type array(regions:set of string,items:set of integer) of real, double each value, and save this change back to the server. It assumes that cfg is an initialized insightapi2~insightconfig value and SCENARIO_ID is the ID of the scenario to modify.
declarations query: insightapi2~scenario_data_query data: insightapi2~scenario_data modifications: insightapi2~scenario_data_modification delta: insightapi2~entity_delta arrdelta: insightapi2~array_delta elem: insightapi2~array_element resp: insightapi2~httpresponse prices: dynamic array(regions:set of string,items:set of integer) of real end-declarations ! Fetch array query.entity_names := ['prices'] data := insightapi2~get_scenario_data(cfg, SCENARIO_ID, query, resp) if not resp.success then writeln_('ERROR downloading "prices" entity: ',resp.errormsg) exit(1) end-if ! Now copy the downloaded 'prices' entity into a local Mosel array. ! Start by finding the 'prices' entity in the scenario_data value with prices_entity=insightapi2~get_value(data.entities, 'prices') do ! The array data will have been fetched in a nested set of dictionaries, the names in each ! being the index set values ! Iterate through the outer dictionary, which will be indexed by region name forall (region_entry in prices_entity.insightapi2~array.array.entries) do ! 'region_entry' value will be dictionary from region ! name to (dictionary from item ID as string to price value) forall (item_entry in region_entry.value.insightapi2~dictionary.entries) do ! 'item_entry' value will be value from prices array prices( string(region_entry.name), parseint(item_entry.name) ) := item_entry.value.real end-do end-do end-do ! Next we update populate the arrdelta structure with an array_element for each element we ! want to update forall (region in regions, item in items | exists(prices(region,item))) do reset(elem) elem.key := [region,item] elem.value := prices(region,item)*2 arrdelta.add := arrdelta.add + [elem] end-do ! Save the arraydelta describing the changes to this array into a scenario_data_modification ! record delta.entity_name := 'prices' delta.array_delta := arrdelta modifications.deltas := [delta] ! Send the modification to the server insightapi2~modify_scenario_data(cfg, SCENARIO_ID, modifications) if not resp.success then writeln_('ERROR updating "prices" entity: ',resp.errormsg) exit(1) end-if writeln('Prices have been doubled.')
Be aware that if you are fetching an entity of type integer, the value arriving in Mosel will always be of type real - you will need to cast these to integer if the type is significant.
Example: Downloading an attachment
This example code demonstrates how to download a scenario attachment named 'alldata.xls' to a local file. It assumes that cfg is an initialized insightapi2~insightconfig value and SCENARIO_ID is the ID of the scenario.
declarations resp: insightapi2~httpresponse attach: insightapi2~attachment page: insightapi2~page_of_attachment end-declarations ! Fetch the list of attachments and look for one with the name we want page := insightapi2~get_scenario_attachments(cfg, SCENARIO_ID, 0, 1000, resp) if not resp.success then writeln_('ERROR fetching list of scenario attachments: ',resp.errormsg) exit(1) end-if forall (att in page.content) do if att.filename='alldata.xls' then attach := att break end-if end-do if not has_id(attach) then ! Attachment record never populated writeln('Attachment "alldata.xls" not found') exit(1) end-if ! Set the filename into which to save the attachment resp.bodyfilename := 'alldata.xls' ! Download the attachment insightapi2~get_scenario_attachment_file(cfg, SCENARIO_ID, attach.id, resp) if not resp.success then writeln_('ERROR downloading attachment: ',resp.errormsg) exit(1) end-if writeln('Attachment downloaded')
Example: Uploading an attachment
This example code demonstrates how to create a scenario attachment named 'username.txt'. Note we specify the attachment content using a insightapi2~file_data record, specifying a local source filename containing the attachment content that has a different name from the attachment filename in the Insight server - the filename field can be left unpopulated if these are the same. We assume that cfg is an initialized insightapi2~insightconfig value and SCENARIO_ID is the ID of the scenario.
declarations public username='william shakespeare' resp: insightapi2~httpresponse attach: insightapi2~attachment end-declarations attach := insightapi2~upload_scenario_attachment(cfg, SCENARIO_ID, insightapi2~file_data(.source:='text:username', .filename:='username.txt'), true, "mytag", resp) if not resp.success then writeln_('ERROR uploading attachment: ',resp.errormsg) exit(1) end-if writeln('Attachment uploaded')
Data Model Types
The data model defines the structures used to communicate with the remote API.
-
This object represents one app in the system. See the wider product documentation for an explanation of what an app is used for.custom_scenario_types : booleanWhether this app defines custom scenario types. False if the only scenario type is the default SCENARIO.execution_modes : insightapi2~dictionary_of_execution_modeThe app's execution modes, mapped by nameexecution_resource_groups : insightapi2~dictionary_of_execution_resource_groupThe app's execution resource groups, mapped by namehelp_url : textThe URL of this app's help documentation. This can either be a path relative to client resources or an absolute URL.id : textThe ID of this appmanaged : booleanWhether this app is managed by insight and therefore cannot be deleted, upgraded, renamed or exported by an end usermirror_defined : booleanWhether a mirror has been defined within the companion file for this appmodel : insightapi2~app_modelAdditional attributes of the main modelname : textThe name of this appobject_type : text(Allowed values are: APP)path : textThe path within the repositoryscenario_types : insightapi2~dictionary_of_scenario_typeThe app's scenario types, mapped by type IDurl : textThe URL of this appNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_custom_scenario_types(myapp) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A app returned from a property of another model will be read-only; use the function insightapi2~copy_app to create an editable copy, e.g. myapp := insightapi2~copy_app(otherobj.originalapp)
4. It is not possible to use a constructor to initialize this type within an expression.
See alsoinsightapi2~app_creation_response
insightapi2~app_model
insightapi2~app_or_folder_or_scenario
insightapi2~dictionary_of_execution_mode
insightapi2~dictionary_of_execution_resource_group
insightapi2~dictionary_of_scenario_type
insightapi2~execution_mode
insightapi2~execution_resource_group
insightapi2~page_of_app
insightapi2~scenario_type
insightapi2~get_app
insightapi2~update_app
-
app : insightapi2~appThe newly created appmessages : list of textInformation messages about the app creation which can be displayed to a userurl : textThe URL of newly created appNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_app(myapp_creation_response) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A app_creation_response returned from a property of another model will be read-only; use the function insightapi2~copy_app_creation_response to create an editable copy, e.g. myapp_creation_response := insightapi2~copy_app_creation_response(otherobj.originalapp_creation_response)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The execution environment to use when executing scenariosapp : insightapi2~reference_appThe app this execution environment belongs toname : textThe name of the execution environmentNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_app(myapp_execution_environment) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A app_execution_environment returned from a property of another model will be read-only; use the function insightapi2~copy_app_execution_environment to create an editable copy, e.g. myapp_execution_environment := insightapi2~copy_app_execution_environment(otherobj.originalapp_execution_environment)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
An execution mode for an appapp : insightapi2~reference_appThe app this execution mode belongs toclears_input_data : booleanWhether this execution mode causes input data to be cleared when it is rundescription : textThe description of this execution modeexecution_resource_group : textThe name of the execution resource group that defines the resources used by this execution modename : textThe name of this execution modepreferred_execution_service : insightapi2~reference_execution_serviceThe execution service preferred by this execution modepreferred_execution_service_name : textThe name of this execution mode's preferred servicepriority : integerThe priority of this execution mode. A higher number indicates higher precedence, for example a priority of 100 will be prioritised over a priority of 1.sends_progress : booleanWhether the execution sends progress when this execution mode is runthreads : integerThe number of threads that this execution mode uses, or null for unlimited. Threads is deprecated and is now defined on the associated execution resource group.unlimited_threads : booleanWhether this execution mode places any restriction on number of threadsurl : textThe URL of this execution modeNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_app(myapp_execution_mode) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A app_execution_mode returned from a property of another model will be read-only; use the function insightapi2~copy_app_execution_mode to create an editable copy, e.g. myapp_execution_mode := insightapi2~copy_app_execution_mode(otherobj.originalapp_execution_mode)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
An execution resource group for an appapp : insightapi2~reference_appThe app this resource group belongs todefault_memory : textThe default amount of memory that this resource group defines, as set by the app developer.default_threads : integerThe default number of threads that this resource group defines, as set by the app developer.description : textThe description of this resource groupmemory : textThe amount of memory that this resource group currently defines. This will default to the value of defaultMemory but can be modified by an insight administrator.min_memory : textThe minimum amount of memory that this resource group can define. Memory cannot be set below this value.min_threads : integerThe minimum number of threads that this resource group can define. Threads cannot be set below this number.name : textThe name of this resource groupread_only : booleanWhether or not this resource group is read onlythreads : integerThe number of threads that this resource group currently defines. This will default to the value of defaultThreads but can be modified by an insight administrator. (Allowed values are: 1,256)Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_app(myapp_execution_resource_group) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A app_execution_resource_group returned from a property of another model will be read-only; use the function insightapi2~copy_app_execution_resource_group to create an editable copy, e.g. myapp_execution_resource_group := insightapi2~copy_app_execution_resource_group(otherobj.originalapp_execution_resource_group)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A user who has access to the app.authorities : list of textThe authorities granted to this app memberauthority_groups : list of insightapi2~reference_authority_groupThe authority groups granted to this app memberfirst_name : textThis app member's first nameid : textThe ID of this app memberlast_name : textThis app member's last namename : textThis app member's nameobject_type : text(Allowed values are: APP_MEMBER)url : textThe URL of this app memberNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_authorities(myapp_member) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A app_member returned from a property of another model will be read-only; use the function insightapi2~copy_app_member to create an editable copy, e.g. myapp_member := insightapi2~copy_app_member(otherobj.originalapp_member)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
data_version : integerThe model data versionname : textThe model nameversion : textThe model versionNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_data_version(myapp_model) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A app_model returned from a property of another model will be read-only; use the function insightapi2~copy_app_model to create an editable copy, e.g. myapp_model := insightapi2~copy_app_model(otherobj.originalapp_model)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
See also
-
Used to provide options affecting how an upgrade request is treated. This object is now deprecated. See UpgradeRequest for updated usage.upgrade_type : textWhether the upgrade app file should be considered to represent the full app or a partial. A full upgrade will replace the existing app with the app being uploaded, deleting any existing app content that is not in the app being uploaded. A partial upgrade will add and/or replace content in the existing app. (Allowed values are: FULL,PARTIAL)validate_model_name : booleanWhether to validate that the new model name matches the previous model nameNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_upgrade_type(myapp_upgrade_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A app_upgrade_request returned from a property of another model will be read-only; use the function insightapi2~copy_app_upgrade_request to create an editable copy, e.g. myapp_upgrade_request := insightapi2~copy_app_upgrade_request(otherobj.originalapp_upgrade_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
This object is now deprecated. See Upgrade for updated usage.messages : list of textThe messages describing the result of the upgradeurl : textThe URL of the upgraded appNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_messages(myapp_upgrade_response) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A app_upgrade_response returned from a property of another model will be read-only; use the function insightapi2~copy_app_upgrade_response to create an editable copy, e.g. myapp_upgrade_response := insightapi2~copy_app_upgrade_response(otherobj.originalapp_upgrade_response)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Represents a map from a set of one or more index values, to a valuearray : insightapi2~dictionaryThe data in this array. The data is represented by a nested set of object maps. Leaves are the values, keys are the indices.array_size : integerThe number of elements in this arrayentity_name : textThe name of this arrayfilter_id : textThe id of the filter that was applied to this array, if present on the filterscenario_id : textThe id of the scenario that owns this arrayNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_array(myarray) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A array returned from a property of another model will be read-only; use the function insightapi2~copy_array to create an editable copy, e.g. myarray := insightapi2~copy_array(otherobj.originalarray)
4. It is not possible to use a constructor to initialize this type within an expression.
5. If this structure is holding data retrieved from the webservice, numeric values in fields of type any will always be represented as real. If you are populating this type to send structure to the webservice, you may store numbers as either real or integer values in such fields.
See also
-
Details changes to a scenario array entity.add : list of insightapi2~array_elementArray elements to add to the array entity.remove : list of list of anyThe keys of elements to remove from the array entity. Accepts Strings, Numbers and Booleans.Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_add(myarray_delta) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A array_delta returned from a property of another model will be read-only; use the function insightapi2~copy_array_delta to create an editable copy, e.g. myarray_delta := insightapi2~copy_array_delta(otherobj.originalarray_delta)
4. It is not possible to use a constructor to initialize this type within an expression.
5. If this structure is holding data retrieved from the webservice, numeric values in fields of type any will always be represented as real. If you are populating this type to send structure to the webservice, you may store numbers as either real or integer values in such fields.
See also
-
An element in an array entity.key : list of anyThe key of the element. Accepts strings, numbers and booleans.value : anyThe value of the element. Accepts strings, numbers and booleans.Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_key(myarray_element) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A array_element returned from a property of another model will be read-only; use the function insightapi2~copy_array_element to create an editable copy, e.g. myarray_element := insightapi2~copy_array_element(otherobj.originalarray_element)
4. It is not possible to use a constructor to initialize this type within an expression.
5. If this structure is holding data retrieved from the webservice, numeric values in fields of type any will always be represented as real. If you are populating this type to send structure to the webservice, you may store numbers as either real or integer values in such fields.
See also
-
A filter that can be applied to an array, matching a subset of keys and values. This filter can specify for each index set the set elements that match the filter. When an array is filtered by the filter, the result is an array with only the values whose keys match the set elements of the filter for each index set. If an index set is not included in the filter then it is equivalent to including all set elements of that index set.entity_name : textThe name of the entity this filter applies tofilter_id : textThe id of this filterindex_filters : insightapi2~dictionary_of_list_of_anyA map of index set name to the array of set elements to use when filtering the array. The index set name may be substituted with the ordinal of the index set within the array. (The first index set of the array has ordinal 0.)Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_entity_name(myarray_filter) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A array_filter returned from a property of another model will be read-only; use the function insightapi2~copy_array_filter to create an editable copy, e.g. myarray_filter := insightapi2~copy_array_filter(otherobj.originalarray_filter)
4. It is not possible to use a constructor to initialize this type within an expression.
5. If this structure is holding data retrieved from the webservice, numeric values in fields of type any will always be represented as real. If you are populating this type to send structure to the webservice, you may store numbers as either real or integer values in such fields.
See also
-
See also
-
A file that is attached to an app or scenarioapp : insightapi2~reference_appThe app that this attachment belongs tocontent_url : textThe URL from which the contents of this attachment can be downloadeddescription : textA description of this attachmentfilename : textThe file name of this attachmenthidden : booleanWhether the attachment is hidden. This indicates the attachment is not for general user interaction.id : textThe ID of this attachmentlast_modified : textWhen the attachment contents were last modifiedlast_modified_by : insightapi2~reference_userThe user who last modified this attachmentname : textThe name of this attachmentobject_type : text(Allowed values are: ATTACHMENT)parent : insightapi2~reference_app_or_reference_scenarioThe parent of this attachment (either an app or a scenario). If the attachment is an app attachment, then the parent property will have the same value as the app property.size : realThe size of this attachment in bytestags : list of textThe tags that are present on this attachmenturl : textThe URL of this attachmentNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_app(myattachment) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A attachment returned from a property of another model will be read-only; use the function insightapi2~copy_attachment to create an editable copy, e.g. myattachment := insightapi2~copy_attachment(otherobj.originalattachment)
4. It is not possible to use a constructor to initialize this type within an expression.
See alsoinsightapi2~page_of_attachment
insightapi2~reference_app
insightapi2~reference_app_or_reference_scenario
insightapi2~reference_user
insightapi2~get_app_attachment
insightapi2~get_scenario_attachment
insightapi2~update_app_attachment
insightapi2~update_scenario_attachment
insightapi2~upload_app_attachment
insightapi2~upload_scenario_attachment
-
A request to download a number of attachmentsids : list of textThe IDs of attachments to downloadNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_ids(myattachment_download_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A attachment_download_request returned from a property of another model will be read-only; use the function insightapi2~copy_attachment_download_request to create an editable copy, e.g. myattachment_download_request := insightapi2~copy_attachment_download_request(otherobj.originalattachment_download_request)
4. It is not possible to use a constructor to initialize this type within an expression.
-
A label/tag which can be applied to one or more attachments depending on its properties.description : textA human-readable description for this tagmandatory : booleanWhether this tag must be present on at least one attachment belonging to the app or scenariomulti_file : booleanWhether this tag can be present on multiple attachmentsname : textThe unique name of this tagNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_description(myattachment_tag) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A attachment_tag returned from a property of another model will be read-only; use the function insightapi2~copy_attachment_tag to create an editable copy, e.g. myattachment_tag := insightapi2~copy_attachment_tag(otherobj.originalattachment_tag)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The attachment filename must conform to the following rules: The length must be between 1 and 255 characters (in UTF-16), it must not begin or end with a whitespace character, it must not contain any ISO Control Characters and it must not contain any of the characters \/?*: -<>"attachment : insightapi2~file_dataThe attachment to uploadhidden : booleanWhether the attachment is hidden. This indicates the attachment is not for general user interaction.overwrite : booleanWhether to overwrite an existing attachment with the same filename or to create a new one with a new nametag_name : textThe name of the tag to create this attachment withNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_attachment(myattachment_upload_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A attachment_upload_request returned from a property of another model will be read-only; use the function insightapi2~copy_attachment_upload_request to create an editable copy, e.g. myattachment_upload_request := insightapi2~copy_attachment_upload_request(otherobj.originalattachment_upload_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A group of authorities that can be assigned to user accounts.authorities : list of textThe authorities in this group (Allowed values are: APP_ALL,APP_ATTACHMENT_EDIT,APP_ATTACHMENT_VIEW,APP_DELETE,APP_EDIT,APP_EXPORT,APP_NEW,DEVELOPER,DIRECT_DATA_VIEW,FOLDER_DELETE,FOLDER_EDIT,FOLDER_NEW,FOLDER_OWNER,FOLDER_SHARE,SCENARIO_ALL,SCENARIO_ATTACHMENT_EDIT,SCENARIO_DELETE,SCENARIO_EDIT,SCENARIO_EXEC,SCENARIO_NEW,SCENARIO_OWNER,SCENARIO_SHARE,SYS_IMPORTEXPORT,SYS_SERVER,SYS_SERVICES,SYS_USER)custom_authorities : list of insightapi2~custom_authorityThe custom authorities in this groupdescription : textThe description of this authority groupexecution_services : list of insightapi2~reference_execution_serviceThe execution services permitted by this groupid : textThe ID of this authority groupmanaged : booleanWhether this authority group is managed by insightname : textThe name of this authority groupobject_type : text(Allowed values are: AUTHORITY_GROUP)url : textThe URL of this authority groupNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_authorities(myauthority_group) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A authority_group returned from a property of another model will be read-only; use the function insightapi2~copy_authority_group to create an editable copy, e.g. myauthority_group := insightapi2~copy_authority_group(otherobj.originalauthority_group)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Information about a bearer tokenaccess_token_expiration_time : textThe expiration time of the tokencn : textThe user's common namemail : textThe user's email addressuid : textThe user IDNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_access_token_expiration_time(mybearer_token_info) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A bearer_token_info returned from a property of another model will be read-only; use the function insightapi2~copy_bearer_token_info to create an editable copy, e.g. mybearer_token_info := insightapi2~copy_bearer_token_info(otherobj.originalbearer_token_info)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
REST API credentials to generate a bearer tokenclient_id : textThe ID of clientmax_age : realThe number of seconds until the generated token will expiresecret : textThe secret used to authorize the clientNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_client_id(mybearer_token_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A bearer_token_request returned from a property of another model will be read-only; use the function insightapi2~copy_bearer_token_request to create an editable copy, e.g. mybearer_token_request := insightapi2~copy_bearer_token_request(otherobj.originalbearer_token_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Details of how a compute job will be executedexecution_service : textThe execution service that should run this jobpriority : integerThe priority of this jobthreads : integerThe number of threads that this job requires. If set, must be between 1 and 256. This setting takes precedence over the XPRS_THREADS control.Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_execution_service(mycompute_execution) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A compute_execution returned from a property of another model will be read-only; use the function insightapi2~copy_compute_execution to create an editable copy, e.g. mycompute_execution := insightapi2~copy_compute_execution(otherobj.originalcompute_execution)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
This object represents one job request submitted via the compute interfaceapp : insightapi2~reference_appThe app this job belongs to. This will always be the app named 'FICO Xpress Insight Compute'.compute_job_type : textThe compute job type (Allowed values are: MOSEL,SOLVER)dependency : textName of a dependency zip. Must match the name of a dependency uploaded as an app attachment to the compute app.execution : insightapi2~compute_executionExecution Service and threads to run the compute job onid : textThe ID of this jobjob_metrics_url : textThe URL of the metricsmodel_status : textThe model status (Allowed values are: NA,OK,INSTR,MATHERR,UNKN_PF,UNKN_SYS,PROB,ERROR,EXIT,IOERR,BREAK,NIFCT,NULL,LICERR,STOP,UNKNOWN)mosel : insightapi2~compute_moselSpecify any mosel specific options if the type of the job is MOSELobject_type : text(Allowed values are: COMPUTE_JOB)owner : insightapi2~reference_userThe user who owns this compute jobpayload_url : textThe URL of the payloadresult_url : textThe URL of the resultrun_log_messages : booleanTrue indicates that incremental run log messages should be sent to the web socket for the client that submitted this requestrun_log_url : textThe URL of the run logscenario : insightapi2~reference_scenarioThe scenario this job relates tosolver : insightapi2~compute_solverSpecify any solver specific options if the type of the job is SOLVERstatus : textThe status of this job (Allowed values are: INACTIVE,QUEUED,EXECUTING,COMPLETING,COMPLETED,FAILED,CANCELLING,CANCELLED,DELETING,DELETED)url : textThe URL of this jobNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_app(mycompute_job) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A compute_job returned from a property of another model will be read-only; use the function insightapi2~copy_compute_job to create an editable copy, e.g. mycompute_job := insightapi2~copy_compute_job(otherobj.originalcompute_job)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A request to create a new compute jobcompute_job_type : textThe compute job type (Allowed values are: MOSEL,SOLVER)dependency : textThe name of a zip file to use for the compute job. If supplied, must match the name of a dependency uploaded to the compute app as an app attachment.execution : insightapi2~compute_executionExecution Service and threads to run the compute job on.id : textThe ID of this compute job. This must be unique across all compute jobs. It must be between 1 and 60 characters and may only contain lower-case alphanumeric characters (a-z), underscores (_), dots (.) and hyphens (-).log_level : textSpecify the log level for execution log output (Allowed values are: DEBUG,INFO,WARN,ERROR)mosel : insightapi2~compute_moselSpecify any mosel specific options if the type of the job is MOSELrun_log_messages : booleanTrue indicates that incremental run log messages should be sent to the web socket for the client that submitted this request.solver : insightapi2~compute_solverSpecify any solver specific options if the type of the job is SOLVERNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_compute_job_type(mycompute_job_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A compute_job_request returned from a property of another model will be read-only; use the function insightapi2~copy_compute_job_request to create an editable copy, e.g. mycompute_job_request := insightapi2~copy_compute_job_request(otherobj.originalcompute_job_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Configuration for a Mosel compute jobparameters : insightapi2~dictionary_of_textA map of Mosel model parametersNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_parameters(mycompute_mosel) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A compute_mosel returned from a property of another model will be read-only; use the function insightapi2~copy_compute_mosel to create an editable copy, e.g. mycompute_mosel := insightapi2~copy_compute_mosel(otherobj.originalcompute_mosel)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Configuration for a Solver compute jobaction : textThe solver action (Allowed values are: OPTIMIZE,IIS)callbacks : list of textCallbacks to invoke during the solving of a job of type SOLVER (requires integration with the Progress Events API) (Allowed values are: BARLOG,CUTLOG,GLOBALLOG,LPLOG,GAPNOTIFY,INTSOL)controls : insightapi2~dictionary_of_textA map of controls to valuesflags : list of textThe flags to be applied during the solve (Allowed values are: DUAL,PRIMAL,BARRIER,NETWORK)problem_type : textThe type of problem being solved. If not set, the solver will determine this based on the problem characteristics. (Allowed values are: LP,MIP)results_to_include : list of textThe results to include in the output of this job (Allowed values are: SOLUTION,BASIS,ATTRIBUTES,SAVE,IIS)Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_action(mycompute_solver) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A compute_solver returned from a property of another model will be read-only; use the function insightapi2~copy_compute_solver to create an editable copy, e.g. mycompute_solver := insightapi2~copy_compute_solver(otherobj.originalcompute_solver)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
An authority defined by an appname : textThe authority's nameNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_name(mycustom_authority) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A custom_authority returned from a property of another model will be read-only; use the function insightapi2~copy_custom_authority to create an editable copy, e.g. mycustom_authority := insightapi2~copy_custom_authority(otherobj.originalcustom_authority)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
excluded_folder_ids : list of textFolders to exclude from the queryroot : insightapi2~reference_app_or_reference_folderThe starting point of the querytimestamp : textScenarios in the defined folder hierarchy will be checked to see whether they have been modified since this timeNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_excluded_folder_ids(mydashboard_query) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A dashboard_query returned from a property of another model will be read-only; use the function insightapi2~copy_dashboard_query to create an editable copy, e.g. mydashboard_query := insightapi2~copy_dashboard_query(otherobj.originaldashboard_query)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
modified : booleanWhether any of the scenarios have been modifiedNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_modified(mydashboard_response) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A dashboard_response returned from a property of another model will be read-only; use the function insightapi2~copy_dashboard_response to create an editable copy, e.g. mydashboard_response := insightapi2~copy_dashboard_response(otherobj.originaldashboard_response)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Details changes to a scenario entity.array_delta : insightapi2~array_deltaThe changes to apply to an array entity.entity_name : textThe name of the scenario entity being changed.set_delta : insightapi2~set_deltaThe changes to apply to a set entity.value : anyThe new value for the entity. Accepts strings, numbers and booleans.Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_array_delta(myentity_delta) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A entity_delta returned from a property of another model will be read-only; use the function insightapi2~copy_entity_delta to create an editable copy, e.g. myentity_delta := insightapi2~copy_entity_delta(otherobj.originalentity_delta)
4. It is not possible to use a constructor to initialize this type within an expression.
5. If this structure is holding data retrieved from the webservice, numeric values in fields of type any will always be represented as real. If you are populating this type to send structure to the webservice, you may store numbers as either real or integer values in such fields.
See also
-
An error detailcode : textThe unique code for this errordesc : textA description of this error for client information, not intended for display to the end usermessage : textA message providing further information which may be displayed to the end usertarget : textAn identifier to help the client locate the error. Typically a JSON property name.timestamp : textWhen the error was first detectedNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_code(myerror_detail) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A error_detail returned from a property of another model will be read-only; use the function insightapi2~copy_error_detail to create an editable copy, e.g. myerror_detail := insightapi2~copy_error_detail(otherobj.originalerror_detail)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A standard or custom mode by which a job is executed which provides additional control by either altering the code path of the model itself or routing the job to particular execution servicesclears_input_data : booleanWhether this execution mode causes input data to be cleared when it is rundescription : textThe description of this execution modeexecution_resource_group : textThe name of the execution resource group that defines the resources used by this execution modename : textThe name of this execution modepriority : integerThe priority of this execution mode. A higher number indicates higher precedence, for example a priority of 100 will be prioritised over a priority of 1.sends_progress : booleanWhether the execution sends progress when this execution mode is runthreads : integerThe number of threads that this execution mode uses, or null for unlimited. Threads is deprecated and is now defined on the associated execution resource group.Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_clears_input_data(myexecution_mode) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A execution_mode returned from a property of another model will be read-only; use the function insightapi2~copy_execution_mode to create an editable copy, e.g. myexecution_mode := insightapi2~copy_execution_mode(otherobj.originalexecution_mode)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A group which defines the resources (memory and threads) used by execution modes which reference this group. Each group defines the minimum, default and current values for threads and memory.default_memory : textThe default amount of memory that this resource group defines, as set by the app developer.default_threads : integerThe default number of threads that this resource group defines, as set by the app developer.description : textThe description of this resource groupmemory : textThe amount of memory that this resource group currently defines. This will default to the value of defaultMemory but can be modified by an insight administrator.min_memory : textThe minimum amount of memory that this resource group can define. Memory cannot be set below this value.min_threads : integerThe minimum number of threads that this resource group can define. Threads cannot be set below this number.name : textThe name of this resource groupread_only : booleanWhether or not this resource group is read onlythreads : integerThe number of threads that this resource group currently defines. This will default to the value of defaultThreads but can be modified by an insight administrator. (Allowed values are: 1,256)Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_default_memory(myexecution_resource_group) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A execution_resource_group returned from a property of another model will be read-only; use the function insightapi2~copy_execution_resource_group to create an editable copy, e.g. myexecution_resource_group := insightapi2~copy_execution_resource_group(otherobj.originalexecution_resource_group)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
An execution service running on an execution workerdefault : booleanWhether this service is the default for models which do not nominate a specific serviceenabled : booleanWhether this service is enabledid : textThe ID of this execution servicename : textThe name of this execution serviceobject_type : text(Allowed values are: EXECUTION_SERVICE)restricted : booleanWhether this service is restricted to certain users via user authoritiesurl : textThe URL of this execution serviceNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_default(myexecution_service) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A execution_service returned from a property of another model will be read-only; use the function insightapi2~copy_execution_service to create an editable copy, e.g. myexecution_service := insightapi2~copy_execution_service(otherobj.originalexecution_service)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A request to create a new execution servicedefault : booleanWhether this service is the default for models which do not nominate a specific serviceenabled : booleanWhether this service is enabledname : textThe name of the new servicerestricted : booleanWhether this service is restricted to certain users via user authoritiesNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_default(myexecution_service_creation_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A execution_service_creation_request returned from a property of another model will be read-only; use the function insightapi2~copy_execution_service_creation_request to create an editable copy, e.g. myexecution_service_creation_request := insightapi2~copy_execution_service_creation_request(otherobj.originalexecution_service_creation_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
enabled : booleanWhether this mapping is enabledjob_capacity : integerThe maximum number of jobs that can run at once (Allowed values are: 1,256)memory_capacity : textThe maximum amount of memory that can be consumed by jobs running on this mapping. This is a number followed by either Mi or Gi to specify megabytes or gigabytesobject_type : textThe type of reference (Allowed values are: EXECUTION_SERVICE_WORKER_MAPPING)service : insightapi2~reference_execution_serviceA reference to the execution servicethread_capacity : integerThe maximum number of threads that can run at once (Allowed values are: 1,256)unlimited_jobs : booleanWhether this mapping places any restriction on the number of jobsunlimited_memory : booleanWhether this mapping places any restriction on the amount of memoryunlimited_threads : booleanWhether this mapping places any restriction on the number of threadsurl : textThe URL of this mappingworker : insightapi2~reference_execution_workerA reference to the execution workerNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_enabled(myexecution_service_worker_mapping) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A execution_service_worker_mapping returned from a property of another model will be read-only; use the function insightapi2~copy_execution_service_worker_mapping to create an editable copy, e.g. myexecution_service_worker_mapping := insightapi2~copy_execution_service_worker_mapping(otherobj.originalexecution_service_worker_mapping)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A worker which executes jobsenabled : booleanWhether this worker is enabledid : textThe ID of this execution workerjob_capacity : integerThe maximum number of jobs that this worker can run at once (Allowed values are: 1,256)memory_capacity : textThe maximum amount of memory that can be consumed by jobs running on this worker. This is a number followed by either Mi or Gi to specify megabytes or gigabytesname : textThe name of this execution workerobject_type : text(Allowed values are: EXECUTION_WORKER)state : insightapi2~execution_worker_stateThe current state of this workerthread_capacity : integerThe maximum number of threads that this worker can run at once (Allowed values are: 1,256)unlimited_memory : booleanWhether this worker has unlimited memory capacityunlimited_threads : booleanWhether this worker has unlimited thread capacityurl : textThe URL of this execution workerversion : textThe version of this workerworker_url : textThe URL that this worker is available onNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_enabled(myexecution_worker) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A execution_worker returned from a property of another model will be read-only; use the function insightapi2~copy_execution_worker to create an editable copy, e.g. myexecution_worker := insightapi2~copy_execution_worker(otherobj.originalexecution_worker)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A request to create a new execution workerenabled : booleanWhether this worker is enabledjob_capacity : integerThe maximum number of jobs that this worker can run at once (Allowed values are: 1,256)memory_capacity : textThe maximum amount of memory that can be consumed by jobs running on this worker. This is a number followed by either Mi or Gi to specify megabytes or gigabytesname : textThe name for this workerthread_capacity : integerThe maximum number of threads that this worker can run at once (Allowed values are: 1,256)unlimited_memory : booleanWhether this worker has unlimited memory capacityunlimited_threads : booleanWhether this worker has unlimited thread capacityworker_url : textThe URL that this worker is available onNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_enabled(myexecution_worker_creation_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A execution_worker_creation_request returned from a property of another model will be read-only; use the function insightapi2~copy_execution_worker_creation_request to create an editable copy, e.g. myexecution_worker_creation_request := insightapi2~copy_execution_worker_creation_request(otherobj.originalexecution_worker_creation_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
message : textA message containing information about this worker's statusstatus : textThe current status of this worker (Allowed values are: ONLINE,OFFLINE,IDLE,PROVISIONING)status_last_modified : textWhen this worker's status was last modifiedNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_message(myexecution_worker_state) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A execution_worker_state returned from a property of another model will be read-only; use the function insightapi2~copy_execution_worker_state to create an editable copy, e.g. myexecution_worker_state := insightapi2~copy_execution_worker_state(otherobj.originalexecution_worker_state)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Contains the status and location of an export.dismissed : booleanTrue indicates this portation has been dismissed by the owner.download_url : textThe download url of this exporterror_messages : list of textThe error messages produced by this portationfilename : textThe filename for this portationfinished : textWhen this portation finishedid : textThe ID of this exportinclude_folders_and_scenarios : booleanThe filter to indicate whether folders and scenario are included as part of this export or not. This is applicable only for an app exportinfo_messages : list of textThe info messages produced by this portationname : textThe name of this exportobject_type : text(Allowed values are: EXPORT)owner : insightapi2~reference_userThe user that owns this portationparent : insightapi2~reference_export_or_reference_import_or_reference_upgradeThe parent of this portation. This is populated when this portation belongs to another. For example when importing an insight file which contains many apps then each app import will be parented by the original import portation.path : textThe path for this export relative to the configured portation directory.reference : insightapi2~reference_app_or_reference_folder_or_reference_scenarioThe reference of the item (app, folder or scenario) being portedstarted : textWhen this portation startedstatus : textThe status of this portation (Allowed values are: QUEUED,MIGRATING,PORTING,SUCCESS,ERROR)url : textThe URL of this exportNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_dismissed(myexport) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A export returned from a property of another model will be read-only; use the function insightapi2~copy_export to create an editable copy, e.g. myexport := insightapi2~copy_export(otherobj.originalexport)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
include_folders_and_scenarios : booleanFilter to indicate whether to include folders and scenario as part of an app export. This is not required for a folder or a scenario exportpath : textPath to the export location. Should be used when exporting to FICO Drive.source : insightapi2~reference_app_or_reference_folder_or_reference_scenarioReference to the item (app, folder or scenario) to be exportedNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_include_folders_and_scenarios(myexport_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A export_request returned from a property of another model will be read-only; use the function insightapi2~copy_export_request to create an editable copy, e.g. myexport_request := insightapi2~copy_export_request(otherobj.originalexport_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Represents a folder in the app folder hierarchy. See the wider product documentation for more information on foldersapp : insightapi2~reference_appThe app that owns this folderid : textThe ID of this foldername : textThe name of this folderobject_type : text(Allowed values are: FOLDER)owner : insightapi2~reference_userThe user that owns this folderparent : insightapi2~reference_app_or_reference_folderThe parent of this folderpath : textThe path within the repositoryshare_status : textThe share status of this folder (Allowed values are: PRIVATE,READONLY,FULLACCESS)url : textThe URL of this folderNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_app(myfolder) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A folder returned from a property of another model will be read-only; use the function insightapi2~copy_folder to create an editable copy, e.g. myfolder := insightapi2~copy_folder(otherobj.originalfolder)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A request to create a new foldername : textThe name for the folderparent : insightapi2~reference_app_or_reference_folderThe app or folder to create this folder underNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_name(myfolder_creation_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A folder_creation_request returned from a property of another model will be read-only; use the function insightapi2~copy_folder_creation_request to create an editable copy, e.g. myfolder_creation_request := insightapi2~copy_folder_creation_request(otherobj.originalfolder_creation_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
See also
-
Contains the status and location of an import.dismissed : booleanTrue indicates this portation has been dismissed by the owner.error_messages : list of textThe error messages produced by this portationfilename : textThe filename for this portationfinished : textWhen this portation finishedid : textThe ID of this importimport_type : textType of import to perform with the supplied file. (Allowed values are: APP,FOLDER_OR_SCENARIO,REPOSITORY)info_messages : list of textThe info messages produced by this portationname : textThe name of this importobject_type : text(Allowed values are: IMPORT)owner : insightapi2~reference_userThe user that owns this portationparent : insightapi2~reference_export_or_reference_import_or_reference_upgradeThe parent of this portation. This is populated when this portation belongs to another. For example when importing an insight file which contains many apps then each app import will be parented by the original import portation.reference : insightapi2~reference_app_or_reference_folder_or_reference_scenarioThe reference of the item (app, folder or scenario) being portedsecurity : textControls the security of imported assets (Allowed values are: ORIGINAL,PRIVATE)started : textWhen this portation startedstatus : textThe status of this portation (Allowed values are: QUEUED,MIGRATING,PORTING,SUCCESS,ERROR)target : insightapi2~reference_app_or_reference_folderThe reference to the parent of the imported scenario or folder. This will not be populated for an app importurl : textThe URL of this importNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_dismissed(myimport) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A import returned from a property of another model will be read-only; use the function insightapi2~copy_import to create an editable copy, e.g. myimport := insightapi2~copy_import(otherobj.originalimport)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
import_type : textType of import to perform with the supplied file. (Allowed values are: APP,FOLDER_OR_SCENARIO,REPOSITORY)security : textControls the security of imported assets (Allowed values are: ORIGINAL,PRIVATE)target : insightapi2~reference_app_or_reference_folderThe reference to the target item (app or folder) to which a folder or a scenario is to be imported. This will not be needed for an app or repository importNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_import_type(myimport_upload_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A import_upload_request returned from a property of another model will be read-only; use the function insightapi2~copy_import_upload_request to create an editable copy, e.g. myimport_upload_request := insightapi2~copy_import_upload_request(otherobj.originalimport_upload_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
More specific error informationcode : textThe unique code for this errordesc : textA description of this error for client information, not intended for display to the end userinner_error : insightapi2~inner_errorMore specific error informationmessage : textA message providing further information which may be displayed to the end userNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_code(myinner_error) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A inner_error returned from a property of another model will be read-only; use the function insightapi2~copy_inner_error to create an editable copy, e.g. myinner_error := insightapi2~copy_inner_error(otherobj.originalinner_error)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The state of a jobapp : insightapi2~reference_appThe app this job belongs tocreated : textWhen the job was createdduration : realThe duration of this job. This is only present when the job is finishedexecution_attempts : integerThe number of attempts to execute this jobexecution_id : textThe current execution ID for this job. This changes if a job is rescheduled and executed againexecution_mode : insightapi2~execution_modeThe execution mode this job will run inexecution_resource_group : insightapi2~execution_resource_groupThe execution resource group that defines the resources this job will run withexecution_service : insightapi2~reference_execution_serviceThe execution service for this jobexecution_worker : insightapi2~reference_execution_workerThe execution worker for this jobfinished : textWhen the job was finishedid : textThe ID of this job statemodel_status : textThe model status (Allowed values are: NA,OK,INSTR,MATHERR,UNKN_PF,UNKN_SYS,PROB,ERROR,EXIT,IOERR,BREAK,NIFCT,NULL,LICERR,STOP,UNKNOWN)name : textThe name of this job stateobject_type : text(Allowed values are: JOB_STATE)objective : realThe objectiveowner : insightapi2~reference_userThe user who owns this jobscenario : insightapi2~reference_scenarioThe scenario this job belongs tosolver_status : textThe solver status (Allowed values are: NA,UNKNOWN,SOLUTION,OPTIMAL,UNFINISHED,INFEASIBLE,UNBOUNDED,OTHER)started : textWhen the job was startedstatus : textThe status of this job (Allowed values are: INACTIVE,QUEUED,EXECUTING,COMPLETING,COMPLETED,FAILED,CANCELLING,CANCELLED,DELETING,DELETED)url : textThe URL of this job stateNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_app(myjob) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A job returned from a property of another model will be read-only; use the function insightapi2~copy_job to create an editable copy, e.g. myjob := insightapi2~copy_job(otherobj.originaljob)
4. It is not possible to use a constructor to initialize this type within an expression.
See alsoinsightapi2~execution_mode
insightapi2~execution_resource_group
insightapi2~page_of_job
insightapi2~reference_app
insightapi2~reference_execution_service
insightapi2~reference_execution_worker
insightapi2~reference_scenario
insightapi2~reference_user
insightapi2~cancel_job
insightapi2~create_job
insightapi2~get_job
-
A request to create a new jobexecution_mode : textThe execution mode (standard or user-defined) of the jobscenario : insightapi2~reference_scenarioThe scenario to create the job forNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_execution_mode(myjob_creation_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A job_creation_request returned from a property of another model will be read-only; use the function insightapi2~copy_job_creation_request to create an editable copy, e.g. myjob_creation_request := insightapi2~copy_job_creation_request(otherobj.originaljob_creation_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Job log file detailsfilename : textThe file name of the job loglast_modified : textThe last modified timestamp of the job log filesize : realSize of the job log file in bytesurl : textThe URL of this fileNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_filename(myjob_log_file) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A job_log_file returned from a property of another model will be read-only; use the function insightapi2~copy_job_log_file to create an editable copy, e.g. myjob_log_file := insightapi2~copy_job_log_file(otherobj.originaljob_log_file)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A message sent from a client to an executing job. Messages are used to send commands to the model.execution_id : textThe execution id of the job to send a message tomessage : textThe message to send to the modelNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_execution_id(myjob_message) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A job_message returned from a property of another model will be read-only; use the function insightapi2~copy_job_message to create an editable copy, e.g. myjob_message := insightapi2~copy_job_message(otherobj.originaljob_message)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Metrics for a job that is either executing or has completed execution. Job metrics consist of 3 distinct stages that a job progresses through in order to complete execution.duration : realThe current duration of this jobexecution : insightapi2~job_stageThe execution stagequeued : insightapi2~job_stageThe queued stagestarted : textWhen this job startedworker : insightapi2~job_stageThe worker stageNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_duration(myjob_metrics) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A job_metrics returned from a property of another model will be read-only; use the function insightapi2~copy_job_metrics to create an editable copy, e.g. myjob_metrics := insightapi2~copy_job_metrics(otherobj.originaljob_metrics)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A phase of a job stage. Each phase may have one or more phase metrics.duration : realThe current duration of this job phasemetrics : insightapi2~dictionary_of_job_phase_metricThis phase's metrics, keyed by namename : textThe name of this phasestarted : textWhen this phase startedNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_duration(myjob_phase) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A job_phase returned from a property of another model will be read-only; use the function insightapi2~copy_job_phase to create an editable copy, e.g. myjob_phase := insightapi2~copy_job_phase(otherobj.originaljob_phase)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A metric of a job phasecount : integerThe count of this phase metricdata_size : realThe size of this phase metricduration : realThe current duration of this job phase metricname : textThe name of this phase metricstarted : textWhen this phase metric startedNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_count(myjob_phase_metric) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A job_phase_metric returned from a property of another model will be read-only; use the function insightapi2~copy_job_phase_metric to create an editable copy, e.g. myjob_phase_metric := insightapi2~copy_job_phase_metric(otherobj.originaljob_phase_metric)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
scenario_ids : list of textThe IDs of the scenarios to find jobs forNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_scenario_ids(myjob_query) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A job_query returned from a property of another model will be read-only; use the function insightapi2~copy_job_query to create an editable copy, e.g. myjob_query := insightapi2~copy_job_query(otherobj.originaljob_query)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A stage of a job metric. A stage is sub-divided into phases.duration : realThe current duration of this job stagename : textThe name of this job stagephases : list of insightapi2~job_phaseThis stage's phasesstarted : textWhen this stage startedNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_duration(myjob_stage) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A job_stage returned from a property of another model will be read-only; use the function insightapi2~copy_job_stage to create an editable copy, e.g. myjob_stage := insightapi2~copy_job_stage(otherobj.originaljob_stage)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A list of UUIDsids : list of textThe IDsNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_ids(mylist_of_ids) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A list_of_ids returned from a property of another model will be read-only; use the function insightapi2~copy_list_of_ids to create an editable copy, e.g. mylist_of_ids := insightapi2~copy_list_of_ids(otherobj.originallist_of_ids)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Provides for configuring mirror behaviour.max_idle_time : integerThe configured maximum time, in seconds, the data for a scenario will live before it is evicted (Allowed values are: 0,31536000)min_time_to_live : integerThe configured minimum time, in seconds, the data for a scenario will live before being eligible for eviction (Allowed values are: 0,31536000)target_capacity : integerThe mirror capacity the system will attempt to maintain (Allowed values are: 0,1000)Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_max_idle_time(mymirror_admin_configuration) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A mirror_admin_configuration returned from a property of another model will be read-only; use the function insightapi2~copy_mirror_admin_configuration to create an editable copy, e.g. mymirror_admin_configuration := insightapi2~copy_mirror_admin_configuration(otherobj.originalmirror_admin_configuration)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Configuration details for display in health checksdatabase_url : textThe configured mirror database connection stringmax_idle_time : integerThe configured maximum time, in seconds, the data for a scenario will live before it is evictedmin_time_to_live : integerThe configured minimum time, in seconds, the data for a scenario will live before being eligible for evictiontarget_capacity : integerThe mirror capacity the system will attempt to maintainusername : textThe configured database usernameNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_database_url(mymirror_configuration_health) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A mirror_configuration_health returned from a property of another model will be read-only; use the function insightapi2~copy_mirror_configuration_health to create an editable copy, e.g. mymirror_configuration_health := insightapi2~copy_mirror_configuration_health(otherobj.originalmirror_configuration_health)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Provides health check information relating to the mirror configurationconfiguration : insightapi2~mirror_configuration_healthHolds mirror configuration informationhealth_checks : insightapi2~dictionary_of_visualization_health_checkA map of VisualizationHealthCheck objects detailing the health of the mirror configurationstatus : textThe combined status for the mirror health checks. (Allowed values are: PASS,WARN,FAIL,SKIPPED)Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_configuration(mymirror_health) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A mirror_health returned from a property of another model will be read-only; use the function insightapi2~copy_mirror_health to create an editable copy, e.g. mymirror_health := insightapi2~copy_mirror_health(otherobj.originalmirror_health)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Represents one data entity and its attributes in the data schema of the app.abbreviated_name : textThe abbreviated name of this entityalias : textThe alias of this entityalways_hidden : booleanIndicates whether this entity is always hiddenconstant : booleanIndicates whether this entity is a constantdata_type : textThe data type of this entity (Allowed values are: UNSUPPORTED,BOOLEAN,INTEGER,REAL,STRING,SET,ARRAY,DECISION_VARIABLE,CONSTRAINT,MODEL,CONSTRAINT_TYPE,VARIABLE_TYPE,PROBLEM_STATUS)element_type : textThe type of elements this array or set contains (Allowed values are: UNSUPPORTED,BOOLEAN,INTEGER,REAL,STRING,SET,ARRAY,DECISION_VARIABLE,CONSTRAINT,MODEL,CONSTRAINT_TYPE,VARIABLE_TYPE,PROBLEM_STATUS)format : textThe formatting of this entityhidden : booleanIndicates whether this entity is hiddenindex_grouping : booleanIndicates whether this entity is used to group an indexindex_groupings : list of textThe index groupings for this setindex_sets : list of textThe name of the index sets that index this arraylabels_entity : booleanIndicates whether this entity is used as the labels for another entitylabels_entity_name : textThe name of the entity that holds the labels for this entitymanagement_type : textIndicates whether entity is part of the input or the results data (Allowed values are: DEFAULT,INPUT,RESULT,IGNORE)name : textThe name of this entityupdate_strategy : textThe update strategy of this entity (Allowed values are: DEFAULT,AFTER_EXECUTION,PROGRESS)Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_abbreviated_name(mymodel_entity) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A model_entity returned from a property of another model will be read-only; use the function insightapi2~copy_model_entity to create an editable copy, e.g. mymodel_entity := insightapi2~copy_model_entity(otherobj.originalmodel_entity)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The data schema of the scenarios in the app, derived from the model.app : insightapi2~reference_appThe app that owns this schemaentities : insightapi2~dictionary_of_model_entityThe entities defined by this schema, keyed by entity nameid : textThe ID of this model schemaname : textThe name of this model schemaobject_type : text(Allowed values are: MODEL_SCHEMA)url : textThe URL of this model schemaNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_app(mymodel_schema) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A model_schema returned from a property of another model will be read-only; use the function insightapi2~copy_model_schema to create an editable copy, e.g. mymodel_schema := insightapi2~copy_model_schema(otherobj.originalmodel_schema)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The top level errorcode : textThe unique code for this error (Allowed values are: FICO-Platform-Http-400,FICO-Platform-Http-404,FICO-Platform-Http-406,FICO-Platform-Http-409,FICO-Platform-Http-413,FICO-Platform-Http-422,FICO-Platform-Http-423,FICO-Platform-Http-429,FICO-Platform-Http-500,FICO-Platform-Http-502,FICO-Platform-Http-503)desc : textA description of this error for client information, not intended for display to the end userdetails : list of insightapi2~error_detailDetails about specific errors that led to this reported errorinner_error : insightapi2~inner_errorMore specific error informationmessage : textA message providing further information which may be displayed to the end userparent_id : textAn OpenTracing parent-span IDspan_id : textAn OpenTracing span IDtimestamp : textWhen the error was first detectedtrace_id : textAn OpenTracing trace IDNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_code(myouter_error) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A outer_error returned from a property of another model will be read-only; use the function insightapi2~copy_outer_error to create an editable copy, e.g. myouter_error := insightapi2~copy_outer_error(otherobj.originalouter_error)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~appNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_app) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_app returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_app to create an editable copy, e.g. mypage_of_app := insightapi2~copy_page_of_app(otherobj.originalpage_of_app)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~app_execution_environmentNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_app_execution_environment) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_app_execution_environment returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_app_execution_environment to create an editable copy, e.g. mypage_of_app_execution_environment := insightapi2~copy_page_of_app_execution_environment(otherobj.originalpage_of_app_execution_environment)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~app_execution_modeNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_app_execution_mode) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_app_execution_mode returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_app_execution_mode to create an editable copy, e.g. mypage_of_app_execution_mode := insightapi2~copy_page_of_app_execution_mode(otherobj.originalpage_of_app_execution_mode)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~app_execution_resource_groupNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_app_execution_resource_group) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_app_execution_resource_group returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_app_execution_resource_group to create an editable copy, e.g. mypage_of_app_execution_resource_group := insightapi2~copy_page_of_app_execution_resource_group(otherobj.originalpage_of_app_execution_resource_group)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~app_memberNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_app_member) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_app_member returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_app_member to create an editable copy, e.g. mypage_of_app_member := insightapi2~copy_page_of_app_member(otherobj.originalpage_of_app_member)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~attachmentNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_attachment) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_attachment returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_attachment to create an editable copy, e.g. mypage_of_attachment := insightapi2~copy_page_of_attachment(otherobj.originalpage_of_attachment)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~attachment_tagNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_attachment_tag) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_attachment_tag returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_attachment_tag to create an editable copy, e.g. mypage_of_attachment_tag := insightapi2~copy_page_of_attachment_tag(otherobj.originalpage_of_attachment_tag)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~authority_groupNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_authority_group) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_authority_group returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_authority_group to create an editable copy, e.g. mypage_of_authority_group := insightapi2~copy_page_of_authority_group(otherobj.originalpage_of_authority_group)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~compute_jobNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_compute_job) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_compute_job returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_compute_job to create an editable copy, e.g. mypage_of_compute_job := insightapi2~copy_page_of_compute_job(otherobj.originalpage_of_compute_job)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~custom_authorityNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_custom_authority) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_custom_authority returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_custom_authority to create an editable copy, e.g. mypage_of_custom_authority := insightapi2~copy_page_of_custom_authority(otherobj.originalpage_of_custom_authority)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~execution_serviceNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_execution_service) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_execution_service returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_execution_service to create an editable copy, e.g. mypage_of_execution_service := insightapi2~copy_page_of_execution_service(otherobj.originalpage_of_execution_service)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~execution_service_worker_mappingNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_execution_service_worker_mapping) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_execution_service_worker_mapping returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_execution_service_worker_mapping to create an editable copy, e.g. mypage_of_execution_service_worker_mapping := insightapi2~copy_page_of_execution_service_worker_mapping(otherobj.originalpage_of_execution_service_worker_mapping)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~execution_workerNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_execution_worker) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_execution_worker returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_execution_worker to create an editable copy, e.g. mypage_of_execution_worker := insightapi2~copy_page_of_execution_worker(otherobj.originalpage_of_execution_worker)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~folder_or_scenarioNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_folder_or_scenario) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_folder_or_scenario returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_folder_or_scenario to create an editable copy, e.g. mypage_of_folder_or_scenario := insightapi2~copy_page_of_folder_or_scenario(otherobj.originalpage_of_folder_or_scenario)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~jobNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_job) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_job returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_job to create an editable copy, e.g. mypage_of_job := insightapi2~copy_page_of_job(otherobj.originalpage_of_job)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~job_log_fileNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_job_log_file) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_job_log_file returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_job_log_file to create an editable copy, e.g. mypage_of_job_log_file := insightapi2~copy_page_of_job_log_file(otherobj.originalpage_of_job_log_file)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~portationNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_portation) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_portation returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_portation to create an editable copy, e.g. mypage_of_portation := insightapi2~copy_page_of_portation(otherobj.originalpage_of_portation)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~portation_directoryNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_portation_directory) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_portation_directory returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_portation_directory to create an editable copy, e.g. mypage_of_portation_directory := insightapi2~copy_page_of_portation_directory(otherobj.originalpage_of_portation_directory)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~sso_attribute_mappingNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_sso_attribute_mapping) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_sso_attribute_mapping returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_sso_attribute_mapping to create an editable copy, e.g. mypage_of_sso_attribute_mapping := insightapi2~copy_page_of_sso_attribute_mapping(otherobj.originalpage_of_sso_attribute_mapping)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
first : booleanWhether this is the first pagelast : booleanWhether this is the last pagenumber : integerThe page number, starting at 0number_of_elements : integerThe number of elements in this page of resultssize : integerThe number of results per pagesort : insightapi2~sortThe sort order applied to the resultstotal_elements : integerThe total number of elements in all the pagestotal_pages : integerThe total number of pagescontent : list of insightapi2~userNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_content(mypage_of_user) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A page_of_user returned from a property of another model will be read-only; use the function insightapi2~copy_page_of_user to create an editable copy, e.g. mypage_of_user := insightapi2~copy_page_of_user(otherobj.originalpage_of_user)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Contains the status and location of a portation.dismissed : booleanTrue indicates this portation has been dismissed by the owner.error_messages : list of textThe error messages produced by this portationfilename : textThe filename for this portationfinished : textWhen this portation finishedid : textThe ID of this referenceinfo_messages : list of textThe info messages produced by this portationname : textThe name of this referenceobject_type : text(Allowed values are: EXPORT,IMPORT,UPGRADE)owner : insightapi2~reference_userThe user that owns this portationparent : insightapi2~reference_export_or_reference_import_or_reference_upgradeThe parent of this portation. This is populated when this portation belongs to another. For example when importing an insight file which contains many apps then each app import will be parented by the original import portation.reference : insightapi2~reference_app_or_reference_folder_or_reference_scenarioThe reference of the item (app, folder or scenario) being portedstarted : textWhen this portation startedstatus : textThe status of this portation (Allowed values are: QUEUED,MIGRATING,PORTING,SUCCESS,ERROR)url : textThe URL of this referenceNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_dismissed(myportation) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A portation returned from a property of another model will be read-only; use the function insightapi2~copy_portation to create an editable copy, e.g. myportation := insightapi2~copy_portation(otherobj.originalportation)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Describes the location and contents of a directory within the configured portation path.files : list of insightapi2~portation_fileThe portation files present in this directoryname : textThe directory namepath : textThe directory path, relative to the configured portation pathNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_files(myportation_directory) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A portation_directory returned from a property of another model will be read-only; use the function insightapi2~copy_portation_directory to create an editable copy, e.g. myportation_directory := insightapi2~copy_portation_directory(otherobj.originalportation_directory)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Describes the location and attributes of a portation file.filename : textThe filenamelast_modified : textWhen the file was last modifiedpath : textThe file path, relative to the configured portation pathsize : realThe file size in bytesNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_filename(myportation_file) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A portation_file returned from a property of another model will be read-only; use the function insightapi2~copy_portation_file to create an editable copy, e.g. myportation_file := insightapi2~copy_portation_file(otherobj.originalportation_file)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The basic details of an appid : textThe ID of this appname : textThe name of this appobject_type : text(Allowed values are: APP)url : textThe URL of this appNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_id(myreference_app) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A reference_app returned from a property of another model will be read-only; use the function insightapi2~copy_reference_app to create an editable copy, e.g. myreference_app := insightapi2~copy_reference_app(otherobj.originalreference_app)
4. It is not possible to use a constructor to initialize this type within an expression.
See alsoinsightapi2~app_execution_environment
insightapi2~app_execution_mode
insightapi2~app_execution_resource_group
insightapi2~attachment
insightapi2~compute_job
insightapi2~folder
insightapi2~job
insightapi2~model_schema
insightapi2~reference_app_or_reference_folder
insightapi2~reference_app_or_reference_folder_or_reference_scenario
insightapi2~reference_app_or_reference_scenario
insightapi2~scenario
insightapi2~sso_attribute_mapping
insightapi2~upgrade
insightapi2~upgrade_request
insightapi2~user
insightapi2~user_creation_request
-
See also
-
See also
-
See also
-
The basic details of an authority groupid : textThe ID of this authority groupname : textThe name of this authority groupobject_type : text(Allowed values are: AUTHORITY_GROUP)url : textThe URL of this authority groupNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_id(myreference_authority_group) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A reference_authority_group returned from a property of another model will be read-only; use the function insightapi2~copy_reference_authority_group to create an editable copy, e.g. myreference_authority_group := insightapi2~copy_reference_authority_group(otherobj.originalreference_authority_group)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
id : textThe ID of this execution servicename : textThe name of this execution serviceobject_type : text(Allowed values are: EXECUTION_SERVICE)url : textThe URL of this execution serviceNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_id(myreference_execution_service) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A reference_execution_service returned from a property of another model will be read-only; use the function insightapi2~copy_reference_execution_service to create an editable copy, e.g. myreference_execution_service := insightapi2~copy_reference_execution_service(otherobj.originalreference_execution_service)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
id : textThe ID of this execution workername : textThe name of this execution workerobject_type : text(Allowed values are: EXECUTION_WORKER)url : textThe URL of this execution workerNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_id(myreference_execution_worker) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A reference_execution_worker returned from a property of another model will be read-only; use the function insightapi2~copy_reference_execution_worker to create an editable copy, e.g. myreference_execution_worker := insightapi2~copy_reference_execution_worker(otherobj.originalreference_execution_worker)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The basic details of an exportid : textThe ID of this exportname : textThe name of this exportobject_type : text(Allowed values are: EXPORT)url : textThe URL of this exportNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_id(myreference_export) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A reference_export returned from a property of another model will be read-only; use the function insightapi2~copy_reference_export to create an editable copy, e.g. myreference_export := insightapi2~copy_reference_export(otherobj.originalreference_export)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
See also
-
The basic details of a folderid : textThe ID of this foldername : textThe name of this folderobject_type : text(Allowed values are: FOLDER)url : textThe URL of this folderNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_id(myreference_folder) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A reference_folder returned from a property of another model will be read-only; use the function insightapi2~copy_reference_folder to create an editable copy, e.g. myreference_folder := insightapi2~copy_reference_folder(otherobj.originalreference_folder)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
See also
-
The basic details of an importid : textThe ID of this importname : textThe name of this importobject_type : text(Allowed values are: IMPORT)url : textThe URL of this importNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_id(myreference_import) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A reference_import returned from a property of another model will be read-only; use the function insightapi2~copy_reference_import to create an editable copy, e.g. myreference_import := insightapi2~copy_reference_import(otherobj.originalreference_import)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The basic details of a scenarioid : textThe ID of this scenarioname : textThe name of this scenarioobject_type : text(Allowed values are: SCENARIO)url : textThe URL of this scenarioNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_id(myreference_scenario) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A reference_scenario returned from a property of another model will be read-only; use the function insightapi2~copy_reference_scenario to create an editable copy, e.g. myreference_scenario := insightapi2~copy_reference_scenario(otherobj.originalreference_scenario)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The basic details of an upgradeid : textThe ID of this upgradename : textThe name of this upgradeobject_type : text(Allowed values are: UPGRADE)url : textThe URL of this upgradeNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_id(myreference_upgrade) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A reference_upgrade returned from a property of another model will be read-only; use the function insightapi2~copy_reference_upgrade to create an editable copy, e.g. myreference_upgrade := insightapi2~copy_reference_upgrade(otherobj.originalreference_upgrade)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The basic details of a userid : textThe ID of this username : textThe name of this userobject_type : text(Allowed values are: USER)url : textThe URL of this userNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_id(myreference_user) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A reference_user returned from a property of another model will be read-only; use the function insightapi2~copy_reference_user to create an editable copy, e.g. myreference_user := insightapi2~copy_reference_user(otherobj.originalreference_user)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Represents an entity with a valueentity_name : textThe name of this scalarvalue : anyThe value of this scalarNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_entity_name(myscalar) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scalar returned from a property of another model will be read-only; use the function insightapi2~copy_scalar to create an editable copy, e.g. myscalar := insightapi2~copy_scalar(otherobj.originalscalar)
4. It is not possible to use a constructor to initialize this type within an expression.
5. If this structure is holding data retrieved from the webservice, numeric values in fields of type any will always be represented as real. If you are populating this type to send structure to the webservice, you may store numbers as either real or integer values in such fields.
See also
-
This object represents one scenario in the system. See the wider product documentation for an explanation of what a scenario is used for.app : insightapi2~reference_appThe app that owns this scenariocreated : textThe datetime this scenario was createdid : textThe ID of this scenarioname : textThe name of this scenarioobject_type : text(Allowed values are: SCENARIO)owner : insightapi2~reference_userThe user that owns this scenarioparent : insightapi2~reference_app_or_reference_folderThe parent of this scenariopath : textThe path within the repositoryscenario_type : textThe scenario's custom type if it has one, otherwise SCENARIO.share_status : textThe share status of this scenario (Allowed values are: PRIVATE,READONLY,FULLACCESS)summary : insightapi2~scenario_summaryThe summary of this scenario's dataurl : textThe URL of this scenarioNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_app(myscenario) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scenario returned from a property of another model will be read-only; use the function insightapi2~copy_scenario to create an editable copy, e.g. myscenario := insightapi2~copy_scenario(otherobj.originalscenario)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
name : textThe name for the scenario; a suffix will be applied to ensure its name is unique among its siblingsparent : insightapi2~reference_app_or_reference_folderThe parent of the new scenario, an app or folderscenario_type : textThe type for the new scenario; the app defines the available scenario types. If no scenarioType is supplied it defaults to SCENARIO.source_scenario : insightapi2~reference_scenarioThe scenario to clone if this is a clone operation. When cloning, the new scenario will have the same scenario type as the source and any supplied scenarioType will be ignored. The scenario will be cloned into the same location as the source scenario if the parent attribute is omitted.Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_name(myscenario_creation_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scenario_creation_request returned from a property of another model will be read-only; use the function insightapi2~copy_scenario_creation_request to create an editable copy, e.g. myscenario_creation_request := insightapi2~copy_scenario_creation_request(otherobj.originalscenario_creation_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Contains summary information and entity data for a scenarioentities : insightapi2~dictionary_of_array_or_scalar_or_setArray, set and scalar entities, mapped by namesummary : insightapi2~scenario_summaryThe data summary for this scenarioNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_entities(myscenario_data) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scenario_data returned from a property of another model will be read-only; use the function insightapi2~copy_scenario_data to create an editable copy, e.g. myscenario_data := insightapi2~copy_scenario_data(otherobj.originalscenario_data)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A list of changes to apply to the scenario data.deltas : list of insightapi2~entity_deltaA list of deltas to apply to the scenario data.force_load : booleanSpecifies that the scenario should be loaded.Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_deltas(myscenario_data_modification) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scenario_data_modification returned from a property of another model will be read-only; use the function insightapi2~copy_scenario_data_modification to create an editable copy, e.g. myscenario_data_modification := insightapi2~copy_scenario_data_modification(otherobj.originalscenario_data_modification)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The entities to retrieve from the scenario data, optionally filtering the arraysentity_names : list of textThe names of the entities to retrievefilters : list of insightapi2~array_filterThe array filters to applyNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_entity_names(myscenario_data_query) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scenario_data_query returned from a property of another model will be read-only; use the function insightapi2~copy_scenario_data_query to create an editable copy, e.g. myscenario_data_query := insightapi2~copy_scenario_data_query(otherobj.originalscenario_data_query)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
This object is a container for a number of properties describing the state of a scenario, its data and the most recent job that executed it.execution_duration : realThe duration of the last execution of this scenario in millisecondsexecution_finished : textWhen this scenario last finished loading or executingexecution_mode : textThe execution mode for the last executionexecution_started : textWhen this scenario last started loading or executingexecution_user : insightapi2~reference_userThe user that last executed this scenariomodel_data_version : integerThe version number of the model datamodel_status : textThe model status for this scenario (Allowed values are: NA,OK,INSTR,MATHERR,UNKN_PF,UNKN_SYS,PROB,ERROR,EXIT,IOERR,BREAK,NIFCT,NULL,LICERR,STOP,UNKNOWN)objective : realThe objective result for this scenarioproblem_status : textThe problem status for this scenario (Allowed values are: NA,UNKNOWN,SOLUTION,OPTIMAL,UNFINISHED,INFEASIBLE,UNBOUNDED,OTHER)reserved_for_job : booleanWhether the scenario is reserved for a jobstate : textThe states that scenario data can be in. UNLOADED - the scenario input data has not been loaded. LOADED - the scenario input data has been loaded but no results have been generated. RESULTS - the scenario has input data has been loaded and the results have been generated. RESULTS_DIRTY - the scenario input data has been changed since the results have been generated. (Allowed values are: UNLOADED,LOADED,RESULTS,RESULTS_DIRTY)Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_execution_duration(myscenario_summary) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scenario_summary returned from a property of another model will be read-only; use the function insightapi2~copy_scenario_summary to create an editable copy, e.g. myscenario_summary := insightapi2~copy_scenario_summary(otherobj.originalscenario_summary)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Defines a custom scenario type. See the wider product documentation for an explanation of what a custom scenario type is used for.icons : insightapi2~scenario_type_iconsOverrides for icons which can be used to customise the appearance of this scenario typeid : textThe unique ID of this scenario typename : textThe display name of this scenario typeoperations : insightapi2~scenario_type_operationOperations that can be performed on this scenario type and whether they are enabled (true) or disabled (false)style : insightapi2~scenario_type_styleA map of CSS style properties to values which can be used to customise the appearance of this scenario typeNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_icons(myscenario_type) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scenario_type returned from a property of another model will be read-only; use the function insightapi2~copy_scenario_type to create an editable copy, e.g. myscenario_type := insightapi2~copy_scenario_type(otherobj.originalscenario_type)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Icon overrides for customising the appearance of a scenario typeexecuted : textThe icon to display when the scenario is executedexecuted_hover : textThe icon to display when the scenario is executed and the mouse is hovering over the iconloaded : textThe icon to display when the scenario is loadedloaded_hover : textThe icon to display when the scenario is loaded and the mouse is hovering over the iconunloaded : textThe icon to display when the scenario is unloadedunloaded_hover : textThe icon to display when the scenario is unloaded and the mouse is hovering over the iconNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_executed(myscenario_type_icons) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scenario_type_icons returned from a property of another model will be read-only; use the function insightapi2~copy_scenario_type_icons to create an editable copy, e.g. myscenario_type_icons := insightapi2~copy_scenario_type_icons(otherobj.originalscenario_type_icons)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Defines the operations that a user is allowed to perform on a scenario of this custom scenario type via the user interface.attachments : booleanViewing the attachments of the scenario (through the attachments dialog)clone : booleanCloning the scenariocreate : booleanCreating a scenario of a certain typedelete : booleanDeleting the scenariodrag : booleanDragging the scenario to a different shelf locationexport : booleanExporting the scenarioload : booleanLoading the scenariolocation : booleanChanging the location of the scenarioowner : booleanChanging the owner of the scenarioproperties : booleanViewing the properties of the scenariorename : booleanChanging the name of the scenariorun : booleanRunning the scenariorun_log : booleanViewing the run log of the scenarioselect : booleanSelecting and deselecting the scenario from the shelfshare : booleanChanging the share status of the scenarioNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_attachments(myscenario_type_operation) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scenario_type_operation returned from a property of another model will be read-only; use the function insightapi2~copy_scenario_type_operation to create an editable copy, e.g. myscenario_type_operation := insightapi2~copy_scenario_type_operation(otherobj.originalscenario_type_operation)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Style overrides for customising the appearance of a scenario of this scenario type when rendered on the user interfaceactive_background_color : textBackground color of the pill when the scenario is activeborder_color : textColor of the pill borderinactive_background_color : textBackground color of the pill when the scenario is inactivetext_color : textColor of the text within the pilltext_color_hover : textColor of the text within the pill when the mouse is hovering over the pillNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_active_background_color(myscenario_type_style) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A scenario_type_style returned from a property of another model will be read-only; use the function insightapi2~copy_scenario_type_style to create an editable copy, e.g. myscenario_type_style := insightapi2~copy_scenario_type_style(otherobj.originalscenario_type_style)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Represents a set of valuesentity_name : textThe name of this setvalues : list of anyThe values of this setNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_entity_name(myset) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A set returned from a property of another model will be read-only; use the function insightapi2~copy_set to create an editable copy, e.g. myset := insightapi2~copy_set(otherobj.originalset)
4. It is not possible to use a constructor to initialize this type within an expression.
5. If this structure is holding data retrieved from the webservice, numeric values in fields of type any will always be represented as real. If you are populating this type to send structure to the webservice, you may store numbers as either real or integer values in such fields.
See also
-
Details changes to a scenario set entity.add : list of anyThe values to add to the set. Accepts Strings, Numbers and Booleans.remove : list of anyThe values to remove from the set. Accepts Strings, Numbers and Booleans.Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_add(myset_delta) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A set_delta returned from a property of another model will be read-only; use the function insightapi2~copy_set_delta to create an editable copy, e.g. myset_delta := insightapi2~copy_set_delta(otherobj.originalset_delta)
4. It is not possible to use a constructor to initialize this type within an expression.
5. If this structure is holding data retrieved from the webservice, numeric values in fields of type any will always be represented as real. If you are populating this type to send structure to the webservice, you may store numbers as either real or integer values in such fields.
See also
-
Details of how paged results were sortedempty : booleanTrue if there are no resultssorted : booleanTrue if the results are sortedunsorted : booleanTrue if the results are not sortedNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_empty(mysort) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A sort returned from a property of another model will be read-only; use the function insightapi2~copy_sort to create an editable copy, e.g. mysort := insightapi2~copy_sort(otherobj.originalsort)
4. It is not possible to use a constructor to initialize this type within an expression.
See alsoinsightapi2~page_of_app
insightapi2~page_of_app_execution_environment
insightapi2~page_of_app_execution_mode
insightapi2~page_of_app_execution_resource_group
insightapi2~page_of_app_member
insightapi2~page_of_attachment
insightapi2~page_of_attachment_tag
insightapi2~page_of_authority_group
insightapi2~page_of_compute_job
insightapi2~page_of_custom_authority
insightapi2~page_of_execution_service
insightapi2~page_of_execution_service_worker_mapping
insightapi2~page_of_execution_worker
insightapi2~page_of_folder_or_scenario
insightapi2~page_of_job
insightapi2~page_of_job_log_file
insightapi2~page_of_portation
insightapi2~page_of_portation_directory
insightapi2~page_of_sso_attribute_mapping
insightapi2~page_of_user
-
The mapping between SSO attribute and the apps and authorities that it grants.grant_apps : list of insightapi2~reference_appThe apps that this attribute mapping grants access togrant_authority_groups : list of insightapi2~reference_authority_groupThe authority groups this attribute mapping will provide the logged in userid : textThe ID of this sso attribute mappingname : textThe attribute name to match onobject_type : text(Allowed values are: SSO_ATTRIBUTE_MAPPING)url : textThe URL of this sso attribute mappingvalues_to_match : list of textThe values to match on. If an exact match is found against this mappings attribute name and any one of the values to match then the configured App's and Authority Groups will be granted to the user on loginNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_grant_apps(mysso_attribute_mapping) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A sso_attribute_mapping returned from a property of another model will be read-only; use the function insightapi2~copy_sso_attribute_mapping to create an editable copy, e.g. mysso_attribute_mapping := insightapi2~copy_sso_attribute_mapping(otherobj.originalsso_attribute_mapping)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Configuration details for display in health checksmirror_host : textThe configured mirror host. This is optional and may be null, in which case the host from the mirror url is used.mirror_port : integerThe configured mirror host. This is optional and may be null, in which case the port from the mirror url is used.site_id : textThe configured siteIdsystem_user : textThe user name of the Tableau system Insight will use to connect to Tableautableau_url : textThe configured Tableau server URLNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_mirror_host(mytableau_configuration_health) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A tableau_configuration_health returned from a property of another model will be read-only; use the function insightapi2~copy_tableau_configuration_health to create an editable copy, e.g. mytableau_configuration_health := insightapi2~copy_tableau_configuration_health(otherobj.originaltableau_configuration_health)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Provides health check information relating to the Tableau configurationconfiguration : insightapi2~tableau_configuration_healthHolds Tableau configuration informationhealth_checks : insightapi2~dictionary_of_visualization_health_checkA map of VisualizationHealthCheck objects detailing the health of the Tableau configurationstatus : textThe combined status for the tableau health checks. (Allowed values are: PASS,WARN,FAIL,SKIPPED)Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_configuration(mytableau_health) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A tableau_health returned from a property of another model will be read-only; use the function insightapi2~copy_tableau_health to create an editable copy, e.g. mytableau_health := insightapi2~copy_tableau_health(otherobj.originaltableau_health)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Contains the status of an upgradedismissed : booleanTrue indicates this portation has been dismissed by the owner.error_messages : list of textThe error messages produced by this portationfilename : textThe filename for this portationfinished : textWhen this portation finishedid : textThe ID of this upgradeinfo_messages : list of textThe info messages produced by this portationname : textThe name of this upgradeobject_type : text(Allowed values are: UPGRADE)owner : insightapi2~reference_userThe user that owns this portationparent : insightapi2~reference_export_or_reference_import_or_reference_upgradeThe parent of this portation. This is populated when this portation belongs to another. For example when importing an insight file which contains many apps then each app import will be parented by the original import portation.reference : insightapi2~reference_appThe reference of the App to be upgradedstarted : textWhen this portation startedstatus : textThe status of this portation (Allowed values are: QUEUED,MIGRATING,PORTING,SUCCESS,ERROR)url : textThe URL of this upgradevalidate_model_name : booleanWhether to validate that the new model name matches the previous model nameNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_dismissed(myupgrade) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A upgrade returned from a property of another model will be read-only; use the function insightapi2~copy_upgrade to create an editable copy, e.g. myupgrade := insightapi2~copy_upgrade(otherobj.originalupgrade)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
The request to upgrade an appreference : insightapi2~reference_appThe reference of the App to be upgraded.upgrade_type : textWhether the upgrade app file should be considered to represent the full app or a partial. A full upgrade will replace the existing app with the app being uploaded, deleting any existing app content that is not in the app being uploaded. A partial upgrade will add and/or replace content in the existing app. (Allowed values are: FULL,PARTIAL)validate_model_name : booleanWhether the model name should be validated or not.Notes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_reference(myupgrade_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A upgrade_request returned from a property of another model will be read-only; use the function insightapi2~copy_upgrade_request to create an editable copy, e.g. myupgrade_request := insightapi2~copy_upgrade_request(otherobj.originalupgrade_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A userapps : list of insightapi2~reference_appThe apps which this user has access toauthority_groups : list of insightapi2~reference_authority_groupThe authority groups granted to this useremail : textThe email address of this userfirst_name : textThis user's first nameid : textThe ID of this userlast_name : textThis user's last namename : textThe name of this userobject_type : text(Allowed values are: USER)password : textThe new user's passwordstatus : textThe status of this user's account (Allowed values are: DELETED,DISABLED,LOCKED,ACTIVE)url : textThe URL of this userusername : textThis user's usernameNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_apps(myuser) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A user returned from a property of another model will be read-only; use the function insightapi2~copy_user to create an editable copy, e.g. myuser := insightapi2~copy_user(otherobj.originaluser)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
A request to create a new userapps : list of insightapi2~reference_appThe apps which this user has access toauthority_groups : list of insightapi2~reference_authority_groupThe authority groups granted to this useremail : textThe new user's email addressfirst_name : textThe new user's first namelast_name : textThe new user's last namename : textThe new user's namepassword : textThe new user's passwordstatus : textThe status of the new user's account (Allowed values are: DELETED,DISABLED,LOCKED,ACTIVE)username : textThe new user's usernameNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_apps(myuser_creation_request) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A user_creation_request returned from a property of another model will be read-only; use the function insightapi2~copy_user_creation_request to create an editable copy, e.g. myuser_creation_request := insightapi2~copy_user_creation_request(otherobj.originaluser_creation_request)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Information about a userauthorities : list of textThe authorities granted to this userauthority_groups : list of insightapi2~reference_authority_groupThe authority groups granted to this useremail : textThe email address of this userexecution_services : list of insightapi2~reference_execution_serviceRestricted execution services that the user has access tofirst_name : textThis user's first nameid : textThe ID of this user profilelast_name : textThis user's last namename : textThe name of this userobject_type : text(Allowed values are: USER_PROFILE)url : textThe URL of this user profileNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_authorities(myuser_profile) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A user_profile returned from a property of another model will be read-only; use the function insightapi2~copy_user_profile to create an editable copy, e.g. myuser_profile := insightapi2~copy_user_profile(otherobj.originaluser_profile)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
-
Holds health check detailsdescription : textDescribes what this health check coversstatus : textThe status of this health check. Whether it has passed, failed or was skipped due to failures recorded in other checks (Allowed values are: PASS,WARN,FAIL,SKIPPED)status_message : textProvides a detailed explanation of the statusNotes1. For each property of the type, there is a has function to check if it is populated, e.g. if has_description(myvisualization_health_check) then...
2. Properties of this type cannot be inspected using a debugger such as Xpress Workbench.
3. A visualization_health_check returned from a property of another model will be read-only; use the function insightapi2~copy_visualization_health_check to create an editable copy, e.g. myvisualization_health_check := insightapi2~copy_visualization_health_check(otherobj.originalvisualization_health_check)
4. It is not possible to use a constructor to initialize this type within an expression.
See also
© 2001-2025 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.