Class ProjectsResource.DatabasesResource.DocumentsResource.PatchRequest
Updates or inserts a document.
Inheritance
Inherited Members
Namespace: Google.Apis.Firestore.v1beta1
Assembly: Google.Apis.Firestore.v1beta1.dll
Syntax
public class ProjectsResource.DatabasesResource.DocumentsResource.PatchRequest : FirestoreBaseServiceRequest<Document>, IClientServiceRequest<Document>, IClientServiceRequest
Constructors
PatchRequest(IClientService, Document, string)
Constructs a new Patch request.
Declaration
public PatchRequest(IClientService service, Document body, string name)
Parameters
| Type | Name | Description |
|---|---|---|
| IClientService | service | |
| Document | body | |
| string | name |
Properties
CurrentDocumentExists
When set to true, the target document must exist. When set to false, the target document
must not exist.
Declaration
[RequestParameter("currentDocument.exists", RequestParameterType.Query)]
public virtual bool? CurrentDocumentExists { get; set; }
Property Value
| Type | Description |
|---|---|
| bool? |
CurrentDocumentUpdateTime
object representation of CurrentDocumentUpdateTimeRaw.
Declaration
[Obsolete("This property is obsolete and may behave unexpectedly; please use CurrentDocumentUpdateTimeDateTimeOffset instead.")]
public virtual object CurrentDocumentUpdateTime { get; set; }
Property Value
| Type | Description |
|---|---|
| object |
CurrentDocumentUpdateTimeDateTimeOffset
Declaration
public virtual DateTimeOffset? CurrentDocumentUpdateTimeDateTimeOffset { get; set; }
Property Value
| Type | Description |
|---|---|
| DateTimeOffset? |
CurrentDocumentUpdateTimeRaw
String representation of CurrentDocumentUpdateTimeDateTimeOffset, formatted for inclusion in the HTTP request.
Declaration
[RequestParameter("currentDocument.updateTime", RequestParameterType.Query)]
public virtual string CurrentDocumentUpdateTimeRaw { get; }
Property Value
| Type | Description |
|---|---|
| string |
HttpMethod
Gets the HTTP method.
Declaration
public override string HttpMethod { get; }
Property Value
| Type | Description |
|---|---|
| string |
Overrides
MaskFieldPaths
The list of field paths in the mask. See Document.fields for a field path syntax reference.
Declaration
[RequestParameter("mask.fieldPaths", RequestParameterType.Query)]
public virtual Repeatable<string> MaskFieldPaths { get; set; }
Property Value
| Type | Description |
|---|---|
| Repeatable<string> |
MethodName
Gets the method name.
Declaration
public override string MethodName { get; }
Property Value
| Type | Description |
|---|---|
| string |
Overrides
Name
The resource name of the document, for example
projects/{project_id}/databases/{database_id}/documents/{document_path}.
Declaration
[RequestParameter("name", RequestParameterType.Path)]
public virtual string Name { get; }
Property Value
| Type | Description |
|---|---|
| string |
RequestOptionsRequestTags
Optional. The request tags for the request. Request tags are user-provided strings used for usage monitoring, cost management, and observability. Callers can associate custom application context (such as component, microservice, feature name, or operation type) with database requests. These tags are collected and aggregated in usage and monitoring reports, allowing billable operations and usage metrics to be sliced and analyzed by tag. These tags only show up in monitoring and are visible in administrative operations (such as usage reports). They do not affect data storage, query semantics, or request execution. Cardinality and Best Practices:
- Request tags are most effective when using a bounded set of distinct values (e.g., fewer than
100 distinct tags across an entire database). Using a large number of distinct tags may result
in tags being omitted from top usage dashboards. - Use structured identifiers (for example:
app=cart,env=prod,service=checkout) and avoid high-cardinality values such as UUIDs, request IDs, timestamps, user IDs, or document keys. - Do not include sensitive data or personally identifiable information (PII) in request tags, as they show up in administrative monitoring. The tags are processed as follows: - Leading and trailing whitespace is trimmed. - Empty tags (after trimming) are filtered out. - Truncated to a maximum of 510 characters. - Deduplicated within the same request. - Limited to a maximum of 50 tags per request (excess tags are silently discarded).
Declaration
[RequestParameter("requestOptions.requestTags", RequestParameterType.Query)]
public virtual Repeatable<string> RequestOptionsRequestTags { get; set; }
Property Value
| Type | Description |
|---|---|
| Repeatable<string> |
RestPath
Gets the REST path.
Declaration
public override string RestPath { get; }
Property Value
| Type | Description |
|---|---|
| string |
Overrides
UpdateMaskFieldPaths
The list of field paths in the mask. See Document.fields for a field path syntax reference.
Declaration
[RequestParameter("updateMask.fieldPaths", RequestParameterType.Query)]
public virtual Repeatable<string> UpdateMaskFieldPaths { get; set; }
Property Value
| Type | Description |
|---|---|
| Repeatable<string> |
Methods
GetBody()
Returns the body of the request.
Declaration
protected override object GetBody()
Returns
| Type | Description |
|---|---|
| object |
Overrides
InitParameters()
Initializes Patch parameter list.
Declaration
protected override void InitParameters()