# Middle Mile Optimization API.

## Service: middlemileoptimization.googleapis.com

### Service endpoint

A [service endpoint](https://cloud.google.com/apis/design/glossary#api_service_endpoint) is a base URL that specifies the network address of an API service. One service might have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:

- `https://middlemileoptimization.googleapis.com`

## REST Resource: [v1.networks](https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks)

| Methods ||
|---|---|
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks/create` | `POST /v1/networks` Creates a Network. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks/delete` | `DELETE /v1/{name=networks/*}` Deletes a Network. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks/get` | `GET /v1/{name=networks/*}` Gets the details of a Network. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks/list` | `GET /v1/networks` Lists the Network. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks/listPaths` | `GET /v1/{parent=networks/*}:listPaths` Returns all the paths that are currently available. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks/patch` | `PATCH /v1/{network.name=networks/*}` Updates a Network. |

## REST Resource: [v1.networks.hubs](https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.hubs)

| Methods ||
|---|---|
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.hubs/create` | `POST /v1/{parent=networks/*}/hubs` Creates a Hub. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.hubs/delete` | `DELETE /v1/{name=networks/*/hubs/*}` Deletes a Hub. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.hubs/get` | `GET /v1/{name=networks/*/hubs/*}` Gets the details of a Hub. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.hubs/list` | `GET /v1/{parent=networks/*}/hubs` Lists the Hubs. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.hubs/makeAvailable` | `POST /v1/{name=networks/*/hubs/*}:makeAvailable` Makes a hub available. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.hubs/makeUnavailable` | `POST /v1/{name=networks/*/hubs/*}:makeUnavailable` Makes a hub unavailable. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.hubs/patch` | `PATCH /v1/{hub.name=networks/*/hubs/*}` Updates a Hub. |

## REST Resource: [v1.networks.lines](https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines)

| Methods ||
|---|---|
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines/create` | `POST /v1/{parent=networks/*}/lines` Creates a Line. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines/delete` | `DELETE /v1/{name=networks/*/lines/*}` Deletes a Line. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines/get` | `GET /v1/{name=networks/*/lines/*}` Gets the details of a Line. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines/list` | `GET /v1/{parent=networks/*}/lines` Lists the Lines. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines/makeAvailable` | `POST /v1/{name=networks/*/lines/*}:makeAvailable` Makes a line available. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines/makeUnavailable` | `POST /v1/{name=networks/*/lines/*}:makeUnavailable` Makes a line unavailable. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines/patch` | `PATCH /v1/{line.name=networks/*/lines/*}` Updates a Line. |

## REST Resource: [v1.networks.lines.rotations](https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines.rotations)

| Methods ||
|---|---|
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines.rotations/create` | `POST /v1/{parent=networks/*/lines/*}/rotations` Creates a LineRotation. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines.rotations/delete` | `DELETE /v1/{name=networks/*/lines/*/rotations/*}` Deletes a LineRotation. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines.rotations/get` | `GET /v1/{name=networks/*/lines/*/rotations/*}` Gets the details of a LineRotation. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines.rotations/list` | `GET /v1/{parent=networks/*/lines/*}/rotations` Lists the LineRotations. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.lines.rotations/patch` | `PATCH /v1/{lineRotation.name=networks/*/lines/*/rotations/*}` Updates a LineRotation. |

## REST Resource: [v1.networks.shipments](https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.shipments)

| Methods ||
|---|---|
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.shipments/delete` | `DELETE /v1/{name=networks/*/shipments/*}` Deletes a Shipment. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.shipments/get` | `GET /v1/{name=networks/*/shipments/*}` Gets the details of a Shipment. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.shipments/list` | `GET /v1/{parent=networks/*}/shipments` Lists the Shipments. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.shipments/route` | `POST /v1/{parent=networks/*}/shipments:route` Route a new shipment. |

## REST Resource: [v1.networks.shipments.path](https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.shipments.path)

| Methods ||
|---|---|
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.shipments.path/commit` | `POST /v1/{name=networks/*/shipments/*}/path:commit` Commits the path of a shipment, indicating that it cannot be changed in the future, even by the user, save for force majeure/act of God indicated by the MakeVehicleUnavailable, MakeHubUnavailable, MakeLineUnavailable methods. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.shipments.path/update` | `POST /v1/{path.shipment=networks/*/shipments/*}/path:update` Changes the path of a shipment: instead of using the service-computed one, the state will contain the one set by the user through this call. |

## REST Resource: [v1.networks.vehicles](https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.vehicles)

| Methods ||
|---|---|
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.vehicles/create` | `POST /v1/{parent=networks/*}/vehicles` Creates a Vehicle. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.vehicles/delete` | `DELETE /v1/{name=networks/*/vehicles/*}` Deletes a Vehicle. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.vehicles/get` | `GET /v1/{name=networks/*/vehicles/*}` Gets the details of a Vehicle. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.vehicles/list` | `GET /v1/{parent=networks/*}/vehicles` Lists the Vehicles. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.vehicles/makeAvailable` | `POST /v1/{name=networks/*/vehicles/*}:makeAvailable` Makes a vehicle available. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.vehicles/makeUnavailable` | `POST /v1/{name=networks/*/vehicles/*}:makeUnavailable` Makes a vehicle unavailable. |
| `https://developers.google.com/optimization/middlemileoptimization/reference/rest/v1/networks.vehicles/patch` | `PATCH /v1/{vehicle.name=networks/*/vehicles/*}` Updates a Vehicle. |