- [JSON representation](https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#SCHEMA_REPRESENTATION)
- [InputConfig](https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#InputConfig)
  - [JSON representation](https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#InputConfig.SCHEMA_REPRESENTATION)
- [GcsSource](https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#GcsSource)
  - [JSON representation](https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#GcsSource.SCHEMA_REPRESENTATION)
- [DataFormat](https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#DataFormat)
- [OutputConfig](https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#OutputConfig)
  - [JSON representation](https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#OutputConfig.SCHEMA_REPRESENTATION)
- [GcsDestination](https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#GcsDestination)
  - [JSON representation](https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#GcsDestination.SCHEMA_REPRESENTATION)

Information for solving one optimization model asynchronously.

| JSON representation |
|---|
| ``` { "displayName": string, "inputConfig": { object (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#InputConfig`) }, "outputConfig": { object (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#OutputConfig`) } } ``` |

| Fields ||
|---|---|
| `displayName` | `string` Optional. User defined model name, can be used as alias by users to keep track of models. |
| `inputConfig` | ``object (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#InputConfig`)`` Required. Information about the input model. |
| `outputConfig` | ``object (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#OutputConfig`)`` Required. The desired output location information. |

## InputConfig

Specify an input for \[locations.batchOptimizeTours\]\[google.maps.routeoptimization.v1.RouteOptimizationService.BatchOptimizeTours\].

| JSON representation |
|---|
| ``` { "dataFormat": enum (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#DataFormat`), // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "gcsSource": { object (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#GcsSource`) } // End of mutually exclusive fields. } ``` |

| Fields ||
|---|---|
| `dataFormat` | ``enum (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#DataFormat`)`` Required. The input data format. |
| Required. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response: ||
| `gcsSource` | ``object (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#GcsSource`)`` A Google Cloud Storage location. This must be a single object (file). |
| End of mutually exclusive fields. ||

## GcsSource

The Google Cloud Storage location where the input file will be read from.

| JSON representation |
|---|
| ``` { "uri": string } ``` |

| Fields ||
|---|---|
| `uri` | `string` Required. URI of a Google Cloud Storage object with the format `gs://bucket/path/to/object`. |

## DataFormat

Data formats for input and output files.

| Enums ||
|---|---|
| `DATA_FORMAT_UNSPECIFIED` | Invalid value, format must not be UNSPECIFIED. |
| `JSON` | JavaScript Object Notation. |
| `PROTO_TEXT` | Protocol Buffers text format. See <https://protobuf.dev/reference/protobuf/textformat-spec/> |

## OutputConfig

Specify a destination for \[locations.batchOptimizeTours\]\[google.maps.routeoptimization.v1.RouteOptimizationService.BatchOptimizeTours\] results.

| JSON representation |
|---|
| ``` { "dataFormat": enum (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#DataFormat`), // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "gcsDestination": { object (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#GcsDestination`) } // End of mutually exclusive fields. } ``` |

| Fields ||
|---|---|
| `dataFormat` | ``enum (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#DataFormat`)`` Required. The output data format. |
| Required. The following is a list of mutually exclusive fields. At most one of the fields will be set in a response: ||
| `gcsDestination` | ``object (`https://developers.google.com/maps/documentation/route-optimization/reference/rest/v1/AsyncModelConfig#GcsDestination`)`` The Google Cloud Storage location to write the output to. |
| End of mutually exclusive fields. ||

## GcsDestination

The Google Cloud Storage location where the output file(s) will be written to.

| JSON representation |
|---|
| ``` { "uri": string } ``` |

| Fields ||
|---|---|
| `uri` | `string` Required. Google Cloud Storage URI. |