Reference documentation and code samples for the Google Cloud Functions V2 Client class GenerateUploadUrlRequest.
Request of GenerateSourceUploadUrl method.
Generated from protobuf message google.cloud.functions.v2.GenerateUploadUrlRequest
Namespace
Google \ Cloud \ Functions \ V2
Methods
__construct
Constructor.
Parameters
Name
Description
data
array
Optional. Data for populating the Message object.
↳ parent
string
Required. The project and location in which the Google Cloud Storage signed URL should be generated, specified in the format projects/*/locations/*.
↳ kms_key_name
string
Resource name of a KMS crypto key (managed by the user) used to encrypt/decrypt function source code objects in intermediate Cloud Storage buckets. When you generate an upload url and upload your source code, it gets copied to an intermediate Cloud Storage bucket. The source code is then copied to a versioned directory in the sources bucket in the consumer project during the function deployment. It must match the pattern projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}. The Google Cloud Functions service account (service-{project_number}@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role 'Cloud KMS CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter)' on the Key/KeyRing/Project/Organization (least access preferred).
↳ environment
int
The function environment the generated upload url will be used for. The upload url for 2nd Gen functions can also be used for 1st gen functions, but not vice versa. If not specified, 2nd generation-style upload URLs are generated.
getParent
Required. The project and location in which the Google Cloud Storage signed
URL should be generated, specified in the format projects/*/locations/*.
Returns
Type
Description
string
setParent
Required. The project and location in which the Google Cloud Storage signed
URL should be generated, specified in the format projects/*/locations/*.
Parameter
Name
Description
var
string
Returns
Type
Description
$this
getKmsKeyName
Resource name of a KMS crypto key (managed by the user) used to
encrypt/decrypt function source code objects in intermediate Cloud Storage
buckets. When you generate an upload url and upload your source code, it
gets copied to an intermediate Cloud Storage bucket. The source code is
then copied to a versioned directory in the sources bucket in the consumer
project during the function deployment.
It must match the pattern
projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}.
The Google Cloud Functions service account
(service-{project_number}@gcf-admin-robot.iam.gserviceaccount.com) must be
granted the role 'Cloud KMS CryptoKey Encrypter/Decrypter
(roles/cloudkms.cryptoKeyEncrypterDecrypter)' on the
Key/KeyRing/Project/Organization (least access preferred).
Returns
Type
Description
string
setKmsKeyName
Resource name of a KMS crypto key (managed by the user) used to
encrypt/decrypt function source code objects in intermediate Cloud Storage
buckets. When you generate an upload url and upload your source code, it
gets copied to an intermediate Cloud Storage bucket. The source code is
then copied to a versioned directory in the sources bucket in the consumer
project during the function deployment.
It must match the pattern
projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}.
The Google Cloud Functions service account
(service-{project_number}@gcf-admin-robot.iam.gserviceaccount.com) must be
granted the role 'Cloud KMS CryptoKey Encrypter/Decrypter
(roles/cloudkms.cryptoKeyEncrypterDecrypter)' on the
Key/KeyRing/Project/Organization (least access preferred).
Parameter
Name
Description
var
string
Returns
Type
Description
$this
getEnvironment
The function environment the generated upload url will be used for.
The upload url for 2nd Gen functions can also be used for 1st gen
functions, but not vice versa. If not specified, 2nd generation-style
upload URLs are generated.
Returns
Type
Description
int
setEnvironment
The function environment the generated upload url will be used for.
The upload url for 2nd Gen functions can also be used for 1st gen
functions, but not vice versa. If not specified, 2nd generation-style
upload URLs are generated.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Google Cloud Functions V2 Client - Class GenerateUploadUrlRequest (2.0.6)\n\nVersion latestkeyboard_arrow_down\n\n- [2.0.6 (latest)](/php/docs/reference/cloud-functions/latest/V2.GenerateUploadUrlRequest)\n- [2.0.5](/php/docs/reference/cloud-functions/2.0.5/V2.GenerateUploadUrlRequest)\n- [1.7.0](/php/docs/reference/cloud-functions/1.7.0/V2.GenerateUploadUrlRequest)\n- [1.6.5](/php/docs/reference/cloud-functions/1.6.5/V2.GenerateUploadUrlRequest)\n- [1.5.0](/php/docs/reference/cloud-functions/1.5.0/V2.GenerateUploadUrlRequest)\n- [1.4.2](/php/docs/reference/cloud-functions/1.4.2/V2.GenerateUploadUrlRequest)\n- [1.3.1](/php/docs/reference/cloud-functions/1.3.1/V2.GenerateUploadUrlRequest)\n- [1.2.0](/php/docs/reference/cloud-functions/1.2.0/V2.GenerateUploadUrlRequest)\n- [1.1.2](/php/docs/reference/cloud-functions/1.1.2/V2.GenerateUploadUrlRequest)\n- [1.0.3](/php/docs/reference/cloud-functions/1.0.3/V2.GenerateUploadUrlRequest) \nReference documentation and code samples for the Google Cloud Functions V2 Client class GenerateUploadUrlRequest.\n\nRequest of `GenerateSourceUploadUrl` method.\n\nGenerated from protobuf message `google.cloud.functions.v2.GenerateUploadUrlRequest`\n\nNamespace\n---------\n\nGoogle \\\\ Cloud \\\\ Functions \\\\ V2\n\nMethods\n-------\n\n### __construct\n\nConstructor.\n\n### getParent\n\nRequired. The project and location in which the Google Cloud Storage signed\nURL should be generated, specified in the format `projects/*/locations/*`.\n\n### setParent\n\nRequired. The project and location in which the Google Cloud Storage signed\nURL should be generated, specified in the format `projects/*/locations/*`.\n\n### getKmsKeyName\n\nResource name of a KMS crypto key (managed by the user) used to\nencrypt/decrypt function source code objects in intermediate Cloud Storage\nbuckets. When you generate an upload url and upload your source code, it\ngets copied to an intermediate Cloud Storage bucket. The source code is\nthen copied to a versioned directory in the sources bucket in the consumer\nproject during the function deployment.\n\nIt must match the pattern\n`projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`.\nThe Google Cloud Functions service account\n(service-{project_number}@gcf-admin-robot.iam.gserviceaccount.com) must be\ngranted the role 'Cloud KMS CryptoKey Encrypter/Decrypter\n(roles/cloudkms.cryptoKeyEncrypterDecrypter)' on the\nKey/KeyRing/Project/Organization (least access preferred).\n\n### setKmsKeyName\n\nResource name of a KMS crypto key (managed by the user) used to\nencrypt/decrypt function source code objects in intermediate Cloud Storage\nbuckets. When you generate an upload url and upload your source code, it\ngets copied to an intermediate Cloud Storage bucket. The source code is\nthen copied to a versioned directory in the sources bucket in the consumer\nproject during the function deployment.\n\nIt must match the pattern\n`projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`.\nThe Google Cloud Functions service account\n(service-{project_number}@gcf-admin-robot.iam.gserviceaccount.com) must be\ngranted the role 'Cloud KMS CryptoKey Encrypter/Decrypter\n(roles/cloudkms.cryptoKeyEncrypterDecrypter)' on the\nKey/KeyRing/Project/Organization (least access preferred).\n\n### getEnvironment\n\nThe function environment the generated upload url will be used for.\n\nThe upload url for 2nd Gen functions can also be used for 1st gen\nfunctions, but not vice versa. If not specified, 2nd generation-style\nupload URLs are generated.\n\n### setEnvironment\n\nThe function environment the generated upload url will be used for.\n\nThe upload url for 2nd Gen functions can also be used for 1st gen\nfunctions, but not vice versa. If not specified, 2nd generation-style\nupload URLs are generated."]]