---
title: "Update a data loading process"
method: PUT
path: "/gdc/projects/{projectId}/dataload/processes/{processId}"
tags: ["dataloading"]
---

# Update a data loading process

`PUT /gdc/projects/{projectId}/dataload/processes/{processId}`

## Request

- Base URL: `https://secure.gooddata.com`
- URL: `https://secure.gooddata.com/gdc/projects/{projectId}/dataload/processes/{processId}`
- Auth: none declared

For a process for a CloudConnect graph, do the following before making this call:
1. Archive or zip the entire CloudConnect Project that you want to upload and name it **upload.zip**. The ZIP file must be smaller than 5 MB.
2. Upload the archive or zip file to your GoodData [user-specific storage](https://help.gooddata.com/display/doc/User+Specific+Data+Storage).


This is a sample request for updating a process of the GRAPH type.
```
{
    "process" : {
        "type": "GRAPH",
        "name": "{process_name}",
        "path": "{path/to/archive.zip}"
    }
}
```
This is a sample request for updating a process of the ETL type.
```
{
    "process": {
        "type": "ETL",
        "name": "{process_name}",
        "component": {
            "name": "{brick}",
            "version": "1",
            "configLocation": {
                "s3": {
                    "path": "s3://{bds_bucket}/{path/to/configuration}/",
                    "accessKey": "{s3_access_key}",
                    "secretKey": "{s3_secret_key}",
                    "region": "us-east-1",
                    "serverSideEncryption": true
                }
            }
        },
        "dataSources": [
            {
                "id": "{data_source_01_id}"
            },
            {
                "id": "{data_source_02_id}"
            }
        ]
    }
}
```
This is a sample response for an updated process of the GRAPH type.
`executables` lists executables (CloudConnect graphs / Ruby scripts / Groovy scripts) in the uploaded zip file.
```
{
    "process" : {
        "type": "GRAPH",
        "name": "{process_name}",
        "graphs": [
            "{graph_1.grf}"
        ],
        "executables": [
            "graph/{graph_2}.grf",
            "graph/{graph_3}.grf"
        ],
        "ownerLogin": "{owner_email_address}",
        "links": {
            "self": "/gdc/projects/{project_id}/dataload/processes/{process_id}",
            "executions": "/gdc/projects/{project_id}/dataload/processes/{process_id}/executions",
            "source": "/gdc/projects/{project_id}/dataload/processes/{process_id}/source"
        }
    }
}
```
This is a sample response for an updated process of the ETL type.
```
{
    "process": {
        "type": "ETL",
        "name": "{process_name}",
        "lastDeployed": "YYYY-MM-DD'T'HH:MM:SS.SSS'Z'",
        "ownerLogin": "{owner_email_address}",
        "links": {
            "self": "/gdc/projects/{project_id}/dataload/processes/{process_id}",
            "executions": "/gdc/projects/{project_id}/dataload/processes/{process_id}/executions",
            "source": "/gdc/projects/{project_id}/dataload/processes/{process_id}/source"
        },
        "component": {
            "name": "{brick}",
            "version": "1",
            "configLocation": {
                "s3": {
                    "path": "s3://{bds_bucket}/{path/to/configuration}/",
                    "accessKey": "{s3_access_key}",
                    "region": "us-east-1",
                    "serverSideEncryption": true
                }
            }
        },
        "dataSources": [
            {
                "id": "{data_source_01_id}"
            },
            {
                "id": "{data_source_02_id}"
            }
        ]
    }
}
```

## Request body

- Process1
  - `process` ProcessRequest, required
    - `alias` string, nullable: The process alias
    - `type` string: The type of the process: DATALOAD, RUBY, GRAPH or ETL. Default is GRAPH
    - `name` string, required: The process name
    - `component` Component1
      - `name` string, required
      - `version` string, required
      - `earlyAccessVersion` string, nullable
      - `configLocation` union
        - S3Config1
          - `s3` S3ConfigRequest, required
            - `path` string, required
            - `accessKey` string, required
            - `region` string
            - `serverSideEncryption` true | false
            - `secretKey` string, nullable
        - DataSourceConfig
          - `dataSourceConfig` object, required
            - `id` string, required
            - `path` string
      - `config` DataDistributionConfig
        - `dataDistribution` object, required
          - `dataSource` string, required
          - `path` string
          - `target` SegmentTarget
            - `segment` object, required
              - …
    - `dataSources` DataSourceItem[]
      - `id` string, required
    - `path` string
    - `ownerLogin` string, nullable
    - `graphs` string[]: List of graphs contained in the ZIP file, DEPRECATED - use executables instead
    - `executables` string[]: The list of executables (CloudConnect graphs / Ruby scripts) in the uploaded zip file

## Response `200`

OK

- Process
  - `process` ProcessResponse, required
    - `alias` string, nullable: The process alias
    - `type` string: The type of the process: DATALOAD, RUBY, GRAPH or ETL. Default is GRAPH
    - `name` string, required: The process name
    - `component` Component
      - `name` string, required
      - `version` string, required
      - `earlyAccessVersion` string, nullable
      - `configLocation` union
        - S3Config
          - `s3` S3ConfigResponse, required
            - `path` string, required
            - `accessKey` string, required
            - `region` string
            - `serverSideEncryption` true | false
            - `secretKey` string, nullable
        - DataSourceConfig
          - `dataSourceConfig` object, required
            - `id` string, required
            - `path` string
      - `config` DataDistributionConfig
        - `dataDistribution` object, required
          - `dataSource` string, required
          - `path` string
          - `target` SegmentTarget
            - `segment` object, required
              - …
    - `dataSources` DataSourceItem[]
      - `id` string, required
    - `ownerLogin` string, nullable
    - `graphs` string[]: list of graphs contained in the ZIP file, DEPRECATED - use executables instead
    - `executables` string[]: list of executables - graphs, scripts etc.
    - `path` string
    - `links` object
      - `self` string, required
      - `executions` string, required

## Other responses

- `202`: Accepted - in case of git process deployment the async task with poll link

---

[API](https://skmtc.dev/gooddata/apis/gooddata-api-documentation.md) - [All operations](https://skmtc.dev/gooddata/apis/gooddata-api-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/gooddata/apis/gooddata-api-documentation/revisions/e5dc0ee6ab00?raw)
