Initializing help system before first use

# Using Dependencies

Dependencies are zip files which can be uploaded to the Compute Interface and then referenced by one or more jobs.
This feature can reduce the size of data that is duplicated in each job request. Common use cases for this include:

- Solving multiple Mosel jobs with common input files as a dependency.
- Solving the same LP/MPS file dependency with different basis or solution files per job.
- Solving the same LP/MPS file dependency with different control parameters per job.

When a job references a dependency, the following sequence occurs when the job is executed:

- The working directory is created.
- Dependency zip file is unzipped into the working directory.
- Job payload is unzipped into working directory.
- Job is executed with job parameters.

The dependency acts as a base onto which the job file or files are overlaid. Its possible for the dependency to provide all the files required to execute the job and the job would not need to include a payload itself.

Dependencies are referenced by name.

    {
      "id": "my-unique-reference",
      "computeJobType": "SOLVER",
      "dependency": "base 1.zip",
      "solver": {
        "resultsToInclude": [
          "SOLUTION",
          "ATTRIBUTES"
        ],
        "controls": {
          "XPRS_MAXTIME": "-1800"
        }
      }
    }

## Uploading Dependencies through the Compute Interface

Dependencies can be uploaded via the Insight user interface. You can upload, list, and delete dependencies associated with a job through the App Attachments window.

1. Click the cog icon in the grey banner at the top of the Insight Compute Interface window to open the App Attachments window.
2. Use the controls on the App Attachments window to UPLOAD or DELETE the available dependencies.
3. Click CLOSE when you have finished editing the Dependencies.

## Uploading Dependencies through the REST API

Dependencies can also be uploaded via the REST API.
Note: The user must be authenticated with Insight to upload a dependency file.

1. Locate the compute app by sending a GET request to `https://<INSIGHTURL>/api/apps`. This will return a JSON response similar to the example below:

       {
         "first": false,
         "last": true,
         "number": 4,
         "numberOfElements": 18,
         "size": 20,
         "sort": null,
         "totalElements": 98,
         "totalPages": 5,
         "content": [
           {
             "objectType": "APP",
             "id": "<appid>",
             "url": "/api/apps/<appid>",
             "path": "/FICO© Xpress Insight Compute",
             "state": "ACTIVE",
             "helpUrl": null,
             "name": "Insight Compute",
             "model": {
               "dataVersion": 2,
               "name": "Insight Compute",
               "version": "0.0.21"
             },
             "customScenarioTypes": false,
             "executionModes": {
               "LOAD": {
                 "name": "LOAD",
                 "description": "",
                 "clearsInputData": true,
                 "threads": null
               },
               "RUN": {
                 "name": "RUN",
                 "description": "",
                 "clearsInputData": false,
                 "threads": null
               }
             },
             "scenarioTypes": {
               "SCENARIO": {
                 "id": "SCENARIO",
                 "name": "SCENARIO",
                 "style": {
                   "activeBackgroundColor": null,
                   "borderColor": null,
                   "inactiveBackgroundColor": null,
                   "textColor": null,
                   "textColorHover": null
                 },
                 "icons": {
                   "loaded": null,
                   "unloaded": null,
                   "executed": null,
                   "loadedHover": null,
                   "executedHover": null,
                   "unloadedHover": null
                 },
                 "operations": {
                   "location": false,
                   "drag": false,
                   "clone": false,
                   "rename": false,
                   "delete": false,
                   "select": false,
                   "run": false,
                   "load": false,
                   "export": false,
                   "create": false,
                   "runLog": false,
                   "properties": false,
                   "share": false,
                   "owner": false,
                   "attachments": false
                 }
               }
             }
           }
         ]
       }

2. POST a multi-part form to `https://<INSIGHTURL>/api/apps/{appId}/attachments` where the `appId` is the `id` of the app highlighted in the example above. The form contains a single field, attachment which should contain the name of the file.

Note: Additionally, you can use `name == "Insight Compute"`, also highlighted in the example above, to identify the Compute App.
Parent Topic Submitting a Job

© 2001-2026 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.