2.2.0 (latest) 2.0.6 1.34.2 1.33.1 1.32.3 1.31.0 1.30.0 1.29.2 1.28.2 1.26.0 1.25.0 1.24.4 1.23.0 1.22.1 1.21.2 1.19.0 1.18.1 1.17.1 Reference documentation and code samples for the Cloud Datastore V1 Client class CommitRequest.

The request for [Datastore.Commit](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.Client.DatastoreClient#_Google_Cloud_Datastore_V1_Client_DatastoreClient__commit__).

Generated from protobuf message `google.datastore.v1.CommitRequest`

## Namespace

Google \\ Cloud \\ Datastore \\ V1

## Methods

### __construct

Constructor.

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `data` | `array` Optional. Data for populating the Message object. |
| `↳ project_id` | `string` Required. The ID of the project against which to make the request. |
| `↳ database_id` | `string` The ID of the database against which to make the request. '(default)' is not allowed; please use empty string '' to refer the default database. |
| `↳ mode` | `int` The type of commit to perform. Defaults to `TRANSACTIONAL`. |
| `↳ transaction` | `string` The identifier of the transaction associated with the commit. A transaction identifier is returned by a call to [Datastore.BeginTransaction](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.Client.DatastoreClient#_Google_Cloud_Datastore_V1_Client_DatastoreClient__beginTransaction__). |
| `↳ single_use_transaction` | `https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.TransactionOptions` Options for beginning a new transaction for this request. The transaction is committed when the request completes. If specified, [TransactionOptions.mode](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.TransactionOptions) must be [TransactionOptions.ReadWrite](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.TransactionOptions.ReadWrite). |
| `↳ mutations` | `array<https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.Mutation>` The mutations to perform. When mode is `TRANSACTIONAL`, mutations affecting a single entity are applied in order. The following sequences of mutations affecting a single entity are not permitted in a single `Commit` request: - `insert` followed by `insert` - `update` followed by `insert` - `upsert` followed by `insert` - `delete` followed by `update` When mode is `NON_TRANSACTIONAL`, no two mutations may affect a single entity. |
| `↳ request_options` | `https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.RequestOptions` Optional. The options for this request. |

### getProjectId

Required. The ID of the project against which to make the request.

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `string` |   |

### setProjectId

Required. The ID of the project against which to make the request.

| **Parameter** ||
|---|---|
| **Name** | **Description** |
| `var` | `string` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `$this` |   |

### getDatabaseId

The ID of the database against which to make the request.

'(default)' is not allowed; please use empty string '' to refer the default
database.

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `string` |   |

### setDatabaseId

The ID of the database against which to make the request.

'(default)' is not allowed; please use empty string '' to refer the default
database.

| **Parameter** ||
|---|---|
| **Name** | **Description** |
| `var` | `string` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `$this` |   |

### getMode

The type of commit to perform. Defaults to `TRANSACTIONAL`.

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `int` | Enum of type [Mode](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.CommitRequest.Mode). |

### setMode

The type of commit to perform. Defaults to `TRANSACTIONAL`.

| **Parameter** ||
|---|---|
| **Name** | **Description** |
| `var` | `int` Enum of type [Mode](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.CommitRequest.Mode). |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `$this` |   |

### getTransaction

The identifier of the transaction associated with the commit. A
transaction identifier is returned by a call to
[Datastore.BeginTransaction](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.Client.DatastoreClient#_Google_Cloud_Datastore_V1_Client_DatastoreClient__beginTransaction__).

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `string` |   |

### hasTransaction

### setTransaction

The identifier of the transaction associated with the commit. A
transaction identifier is returned by a call to
[Datastore.BeginTransaction](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.Client.DatastoreClient#_Google_Cloud_Datastore_V1_Client_DatastoreClient__beginTransaction__).

| **Parameter** ||
|---|---|
| **Name** | **Description** |
| `var` | `string` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `$this` |   |

### getSingleUseTransaction

Options for beginning a new transaction for this request.

The transaction is committed when the request completes. If specified,
[TransactionOptions.mode](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.TransactionOptions) must be
[TransactionOptions.ReadWrite](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.TransactionOptions.ReadWrite).

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.TransactionOptions|null` |   |

### hasSingleUseTransaction

### setSingleUseTransaction

Options for beginning a new transaction for this request.

The transaction is committed when the request completes. If specified,
[TransactionOptions.mode](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.TransactionOptions) must be
[TransactionOptions.ReadWrite](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.TransactionOptions.ReadWrite).

| **Parameter** ||
|---|---|
| **Name** | **Description** |
| `var` | `https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.TransactionOptions` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `$this` |   |

### getMutations

The mutations to perform.

When mode is `TRANSACTIONAL`, mutations affecting a single entity are
applied in order. The following sequences of mutations affecting a single
entity are not permitted in a single `Commit` request:

- `insert` followed by `insert`
- `update` followed by `insert`
- `upsert` followed by `insert`
- `delete` followed by `update` When mode is `NON_TRANSACTIONAL`, no two mutations may affect a single entity.

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `Google\Protobuf\RepeatedField<https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.Mutation>` |   |

### setMutations

The mutations to perform.

When mode is `TRANSACTIONAL`, mutations affecting a single entity are
applied in order. The following sequences of mutations affecting a single
entity are not permitted in a single `Commit` request:

- `insert` followed by `insert`
- `update` followed by `insert`
- `upsert` followed by `insert`
- `delete` followed by `update` When mode is `NON_TRANSACTIONAL`, no two mutations may affect a single entity.

| **Parameter** ||
|---|---|
| **Name** | **Description** |
| `var` | `array<https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.Mutation>` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `$this` |   |

### getRequestOptions

Optional. The options for this request.

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.RequestOptions|null` |   |

### hasRequestOptions

### clearRequestOptions

### setRequestOptions

Optional. The options for this request.

| **Parameter** ||
|---|---|
| **Name** | **Description** |
| `var` | `https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.RequestOptions` |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `$this` |   |

### getTransactionSelector

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `string` |   |

### static::build

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `projectId` | `string` Required. The ID of the project against which to make the request. |
| `mode` | `int` The type of commit to perform. Defaults to `TRANSACTIONAL`. For allowed values, use constants defined on [CommitRequest\\Mode](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.CommitRequest.Mode) |
| `transaction` | `string` The identifier of the transaction associated with the commit. A transaction identifier is returned by a call to [Datastore.BeginTransaction](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.Client.DatastoreClient#_Google_Cloud_Datastore_V1_Client_DatastoreClient__beginTransaction__). |
| `mutations` | `array<https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.Mutation>` The mutations to perform. When mode is `TRANSACTIONAL`, mutations affecting a single entity are applied in order. The following sequences of mutations affecting a single entity are not permitted in a single `Commit` request: - `insert` followed by `insert` - `update` followed by `insert` - `upsert` followed by `insert` - `delete` followed by `update` When mode is `NON_TRANSACTIONAL`, no two mutations may affect a single entity. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.CommitRequest` |   |

### static::buildFromProjectIdModeMutations

| **Parameters** ||
|---|---|
| **Name** | **Description** |
| `projectId` | `string` Required. The ID of the project against which to make the request. |
| `mode` | `int` The type of commit to perform. Defaults to `TRANSACTIONAL`. For allowed values, use constants defined on [CommitRequest\\Mode](https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.CommitRequest.Mode) |
| `mutations` | `array<https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.Mutation>` The mutations to perform. When mode is `TRANSACTIONAL`, mutations affecting a single entity are applied in order. The following sequences of mutations affecting a single entity are not permitted in a single `Commit` request: - `insert` followed by `insert` - `update` followed by `insert` - `upsert` followed by `insert` - `delete` followed by `update` When mode is `NON_TRANSACTIONAL`, no two mutations may affect a single entity. |

| **Returns** ||
|---|---|
| **Type** | **Description** |
| `https://docs.cloud.google.com/php/docs/reference/cloud-datastore/latest/V1.CommitRequest` |   |