Discovery Engine API . projects

Instance Methods

locations()

Returns the locations Resource.

operations()

Returns the operations Resource.

close()

Close httplib2 connections.

get(name, x__xgafv=None)

Gets a Project. Returns NOT_FOUND when the project is not yet created.

patch(name, body=None, updateMask=None, x__xgafv=None)

Updates the editable settings of a Discovery Engine Project.

provision(name, body=None, x__xgafv=None)

Provisions the project resource. During the process, related systems will get prepared and initialized. Caller must read the [Terms for data use](https://cloud.google.com/retail/data-use-terms), and optionally specify in request to provide consent to that service terms.

reportConsentChange(project, body=None, x__xgafv=None)

Updates service terms for this project. This method can be used to retroactively accept the latest terms. Terms available for update: * [Terms for data use](https://cloud.google.com/retail/data-use-terms)

Method Details

close()
Close httplib2 connections.
get(name, x__xgafv=None)
Gets a Project. Returns NOT_FOUND when the project is not yet created.

Args:
  name: string, Required. Full resource name of a Project, such as `projects/{project_id_or_number}`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Metadata and configurations for a Google Cloud project in the service.
  "configurableBillingStatus": { # Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). # Output only. The current status of the project's configurable billing.
    "effectiveIndexingCoreThreshold": "A String", # Optional. The currently effective Indexing Core threshold. This is the threshold against which Indexing Core usage is compared for overage calculations.
    "effectiveSearchQpmThreshold": "A String", # Optional. The currently effective Search QPM threshold in queries per minute. This is the threshold against which QPM usage is compared for overage calculations.
    "startTime": "A String", # Optional. The start time of the currently active billing subscription.
  },
  "createTime": "A String", # Output only. The timestamp when this project is created.
  "customerProvidedConfig": { # Customer provided configurations. # Optional. Customer provided configurations.
    "notebooklmConfig": { # Configuration for NotebookLM. # Optional. Configuration for NotebookLM settings.
      "modelArmorConfig": { # Configuration for customer defined Model Armor templates to be used for sanitizing user prompts and LLM responses. # Model Armor configuration to be used for sanitizing user prompts and LLM responses.
        "responseTemplate": "A String", # Optional. The resource name of the Model Armor Template for sanitizing LLM responses. Format: projects/{project}/locations/{location}/templates/{template_id} If not specified, no sanitization will be applied to the LLM response.
        "userPromptTemplate": "A String", # Optional. The resource name of the Model Armor Template for sanitizing user prompts. Format: projects/{project}/locations/{location}/templates/{template_id} If not specified, no sanitization will be applied to the user prompt.
      },
      "optOutNotebookSharing": True or False, # Optional. Whether to disable the notebook sharing feature for the project. Default to false if not specified.
    },
  },
  "name": "A String", # Output only. Full resource name of the project, for example `projects/{project}`. Note that when making requests, project number and project id are both acceptable, but the server will always respond in project number.
  "provisionCompletionTime": "A String", # Output only. The timestamp when this project is successfully provisioned. Empty value means this project is still provisioning and is not ready for use.
  "serviceTermsMap": { # Output only. A map of terms of services. The key is the `id` of ServiceTerms.
    "a_key": { # Metadata about the terms of service.
      "acceptTime": "A String", # The last time when the project agreed to the terms of service.
      "declineTime": "A String", # The last time when the project declined or revoked the agreement to terms of service.
      "id": "A String", # The unique identifier of this terms of service. Available terms: * `GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-use-terms). When using this as `id`, the acceptable version to provide is `2022-11-23`.
      "state": "A String", # Whether the project has accepted/rejected the service terms or it is still pending.
      "version": "A String", # The version string of the terms of service. For acceptable values, see the comments for id above.
    },
  },
}
patch(name, body=None, updateMask=None, x__xgafv=None)
Updates the editable settings of a Discovery Engine Project.

Args:
  name: string, Output only. Full resource name of the project, for example `projects/{project}`. Note that when making requests, project number and project id are both acceptable, but the server will always respond in project number. (required)
  body: object, The request body.
    The object takes the form of:

{ # Metadata and configurations for a Google Cloud project in the service.
  "configurableBillingStatus": { # Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). # Output only. The current status of the project's configurable billing.
    "effectiveIndexingCoreThreshold": "A String", # Optional. The currently effective Indexing Core threshold. This is the threshold against which Indexing Core usage is compared for overage calculations.
    "effectiveSearchQpmThreshold": "A String", # Optional. The currently effective Search QPM threshold in queries per minute. This is the threshold against which QPM usage is compared for overage calculations.
    "startTime": "A String", # Optional. The start time of the currently active billing subscription.
  },
  "createTime": "A String", # Output only. The timestamp when this project is created.
  "customerProvidedConfig": { # Customer provided configurations. # Optional. Customer provided configurations.
    "notebooklmConfig": { # Configuration for NotebookLM. # Optional. Configuration for NotebookLM settings.
      "modelArmorConfig": { # Configuration for customer defined Model Armor templates to be used for sanitizing user prompts and LLM responses. # Model Armor configuration to be used for sanitizing user prompts and LLM responses.
        "responseTemplate": "A String", # Optional. The resource name of the Model Armor Template for sanitizing LLM responses. Format: projects/{project}/locations/{location}/templates/{template_id} If not specified, no sanitization will be applied to the LLM response.
        "userPromptTemplate": "A String", # Optional. The resource name of the Model Armor Template for sanitizing user prompts. Format: projects/{project}/locations/{location}/templates/{template_id} If not specified, no sanitization will be applied to the user prompt.
      },
      "optOutNotebookSharing": True or False, # Optional. Whether to disable the notebook sharing feature for the project. Default to false if not specified.
    },
  },
  "name": "A String", # Output only. Full resource name of the project, for example `projects/{project}`. Note that when making requests, project number and project id are both acceptable, but the server will always respond in project number.
  "provisionCompletionTime": "A String", # Output only. The timestamp when this project is successfully provisioned. Empty value means this project is still provisioning and is not ready for use.
  "serviceTermsMap": { # Output only. A map of terms of services. The key is the `id` of ServiceTerms.
    "a_key": { # Metadata about the terms of service.
      "acceptTime": "A String", # The last time when the project agreed to the terms of service.
      "declineTime": "A String", # The last time when the project declined or revoked the agreement to terms of service.
      "id": "A String", # The unique identifier of this terms of service. Available terms: * `GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-use-terms). When using this as `id`, the acceptable version to provide is `2022-11-23`.
      "state": "A String", # Whether the project has accepted/rejected the service terms or it is still pending.
      "version": "A String", # The version string of the terms of service. For acceptable values, see the comments for id above.
    },
  },
}

  updateMask: string, Optional. The list of fields to update. Supported fields: * `customer_provided_config`
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Metadata and configurations for a Google Cloud project in the service.
  "configurableBillingStatus": { # Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). # Output only. The current status of the project's configurable billing.
    "effectiveIndexingCoreThreshold": "A String", # Optional. The currently effective Indexing Core threshold. This is the threshold against which Indexing Core usage is compared for overage calculations.
    "effectiveSearchQpmThreshold": "A String", # Optional. The currently effective Search QPM threshold in queries per minute. This is the threshold against which QPM usage is compared for overage calculations.
    "startTime": "A String", # Optional. The start time of the currently active billing subscription.
  },
  "createTime": "A String", # Output only. The timestamp when this project is created.
  "customerProvidedConfig": { # Customer provided configurations. # Optional. Customer provided configurations.
    "notebooklmConfig": { # Configuration for NotebookLM. # Optional. Configuration for NotebookLM settings.
      "modelArmorConfig": { # Configuration for customer defined Model Armor templates to be used for sanitizing user prompts and LLM responses. # Model Armor configuration to be used for sanitizing user prompts and LLM responses.
        "responseTemplate": "A String", # Optional. The resource name of the Model Armor Template for sanitizing LLM responses. Format: projects/{project}/locations/{location}/templates/{template_id} If not specified, no sanitization will be applied to the LLM response.
        "userPromptTemplate": "A String", # Optional. The resource name of the Model Armor Template for sanitizing user prompts. Format: projects/{project}/locations/{location}/templates/{template_id} If not specified, no sanitization will be applied to the user prompt.
      },
      "optOutNotebookSharing": True or False, # Optional. Whether to disable the notebook sharing feature for the project. Default to false if not specified.
    },
  },
  "name": "A String", # Output only. Full resource name of the project, for example `projects/{project}`. Note that when making requests, project number and project id are both acceptable, but the server will always respond in project number.
  "provisionCompletionTime": "A String", # Output only. The timestamp when this project is successfully provisioned. Empty value means this project is still provisioning and is not ready for use.
  "serviceTermsMap": { # Output only. A map of terms of services. The key is the `id` of ServiceTerms.
    "a_key": { # Metadata about the terms of service.
      "acceptTime": "A String", # The last time when the project agreed to the terms of service.
      "declineTime": "A String", # The last time when the project declined or revoked the agreement to terms of service.
      "id": "A String", # The unique identifier of this terms of service. Available terms: * `GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-use-terms). When using this as `id`, the acceptable version to provide is `2022-11-23`.
      "state": "A String", # Whether the project has accepted/rejected the service terms or it is still pending.
      "version": "A String", # The version string of the terms of service. For acceptable values, see the comments for id above.
    },
  },
}
provision(name, body=None, x__xgafv=None)
Provisions the project resource. During the process, related systems will get prepared and initialized. Caller must read the [Terms for data use](https://cloud.google.com/retail/data-use-terms), and optionally specify in request to provide consent to that service terms.

Args:
  name: string, Required. Full resource name of a Project, such as `projects/{project_id_or_number}`. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request for ProjectService.ProvisionProject method.
  "acceptDataUseTerms": True or False, # Required. Set to `true` to specify that caller has read and would like to give consent to the [Terms for data use](https://cloud.google.com/retail/data-use-terms).
  "dataUseTermsVersion": "A String", # Required. The version of the [Terms for data use](https://cloud.google.com/retail/data-use-terms) that caller has read and would like to give consent to. Acceptable version is `2022-11-23`, and this may change over time.
  "saasParams": { # Parameters for Agentspace. # Optional. Parameters for Agentspace.
    "acceptBizQos": True or False, # Optional. Set to `true` to specify that caller has read and would like to give consent to the [Terms for Agent Space quality of service].
    "isBiz": True or False, # Optional. Indicates if the current request is for Biz edition (= true) or not (= false).
  },
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
reportConsentChange(project, body=None, x__xgafv=None)
Updates service terms for this project. This method can be used to retroactively accept the latest terms. Terms available for update: * [Terms for data use](https://cloud.google.com/retail/data-use-terms)

Args:
  project: string, Required. Full resource name of a Project, such as `projects/{project_id_or_number}`. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request for ReportConsentChange method.
  "consentChangeAction": "A String", # Required. Whether customer decides to accept or decline service term. At this moment, only accept action is supported.
  "serviceTermId": "A String", # Required. The unique identifier of the terms of service to update. Available term ids: * `GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-use-terms). When using this service term id, the acceptable service_term_version to provide is `2022-11-23`.
  "serviceTermVersion": "A String", # Required. The version string of the terms of service to update.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Metadata and configurations for a Google Cloud project in the service.
  "configurableBillingStatus": { # Represents the currently effective configurable billing parameters. These values are derived from the customer's subscription history stored internally and reflect the thresholds actively being used for billing purposes at the time of the GetProject call. This includes the start_time of the subscription and may differ from the values in `customer_provided_config` due to billing rules (e.g., scale-downs taking effect only at the start of a new month). # Output only. The current status of the project's configurable billing.
    "effectiveIndexingCoreThreshold": "A String", # Optional. The currently effective Indexing Core threshold. This is the threshold against which Indexing Core usage is compared for overage calculations.
    "effectiveSearchQpmThreshold": "A String", # Optional. The currently effective Search QPM threshold in queries per minute. This is the threshold against which QPM usage is compared for overage calculations.
    "startTime": "A String", # Optional. The start time of the currently active billing subscription.
  },
  "createTime": "A String", # Output only. The timestamp when this project is created.
  "customerProvidedConfig": { # Customer provided configurations. # Optional. Customer provided configurations.
    "notebooklmConfig": { # Configuration for NotebookLM. # Optional. Configuration for NotebookLM settings.
      "modelArmorConfig": { # Configuration for customer defined Model Armor templates to be used for sanitizing user prompts and LLM responses. # Model Armor configuration to be used for sanitizing user prompts and LLM responses.
        "responseTemplate": "A String", # Optional. The resource name of the Model Armor Template for sanitizing LLM responses. Format: projects/{project}/locations/{location}/templates/{template_id} If not specified, no sanitization will be applied to the LLM response.
        "userPromptTemplate": "A String", # Optional. The resource name of the Model Armor Template for sanitizing user prompts. Format: projects/{project}/locations/{location}/templates/{template_id} If not specified, no sanitization will be applied to the user prompt.
      },
      "optOutNotebookSharing": True or False, # Optional. Whether to disable the notebook sharing feature for the project. Default to false if not specified.
    },
  },
  "name": "A String", # Output only. Full resource name of the project, for example `projects/{project}`. Note that when making requests, project number and project id are both acceptable, but the server will always respond in project number.
  "provisionCompletionTime": "A String", # Output only. The timestamp when this project is successfully provisioned. Empty value means this project is still provisioning and is not ready for use.
  "serviceTermsMap": { # Output only. A map of terms of services. The key is the `id` of ServiceTerms.
    "a_key": { # Metadata about the terms of service.
      "acceptTime": "A String", # The last time when the project agreed to the terms of service.
      "declineTime": "A String", # The last time when the project declined or revoked the agreement to terms of service.
      "id": "A String", # The unique identifier of this terms of service. Available terms: * `GA_DATA_USE_TERMS`: [Terms for data use](https://cloud.google.com/retail/data-use-terms). When using this as `id`, the acceptable version to provide is `2022-11-23`.
      "state": "A String", # Whether the project has accepted/rejected the service terms or it is still pending.
      "version": "A String", # The version string of the terms of service. For acceptable values, see the comments for id above.
    },
  },
}