[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["# Cloud Storage API - Class Google::Cloud::Storage::PostObject (v1.57.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.57.0 (latest)](/ruby/docs/reference/google-cloud-storage/latest/Google-Cloud-Storage-PostObject)\n- [1.56.0](/ruby/docs/reference/google-cloud-storage/1.56.0/Google-Cloud-Storage-PostObject)\n- [1.55.0](/ruby/docs/reference/google-cloud-storage/1.55.0/Google-Cloud-Storage-PostObject)\n- [1.54.0](/ruby/docs/reference/google-cloud-storage/1.54.0/Google-Cloud-Storage-PostObject)\n- [1.53.0](/ruby/docs/reference/google-cloud-storage/1.53.0/Google-Cloud-Storage-PostObject)\n- [1.52.0](/ruby/docs/reference/google-cloud-storage/1.52.0/Google-Cloud-Storage-PostObject)\n- [1.51.0](/ruby/docs/reference/google-cloud-storage/1.51.0/Google-Cloud-Storage-PostObject)\n- [1.50.0](/ruby/docs/reference/google-cloud-storage/1.50.0/Google-Cloud-Storage-PostObject)\n- [1.49.0](/ruby/docs/reference/google-cloud-storage/1.49.0/Google-Cloud-Storage-PostObject)\n- [1.48.1](/ruby/docs/reference/google-cloud-storage/1.48.1/Google-Cloud-Storage-PostObject)\n- [1.47.0](/ruby/docs/reference/google-cloud-storage/1.47.0/Google-Cloud-Storage-PostObject)\n- [1.46.0](/ruby/docs/reference/google-cloud-storage/1.46.0/Google-Cloud-Storage-PostObject)\n- [1.45.0](/ruby/docs/reference/google-cloud-storage/1.45.0/Google-Cloud-Storage-PostObject)\n- [1.44.0](/ruby/docs/reference/google-cloud-storage/1.44.0/Google-Cloud-Storage-PostObject)\n- [1.43.0](/ruby/docs/reference/google-cloud-storage/1.43.0/Google-Cloud-Storage-PostObject)\n- [1.42.0](/ruby/docs/reference/google-cloud-storage/1.42.0/Google-Cloud-Storage-PostObject)\n- [1.41.0](/ruby/docs/reference/google-cloud-storage/1.41.0/Google-Cloud-Storage-PostObject)\n- [1.40.0](/ruby/docs/reference/google-cloud-storage/1.40.0/Google-Cloud-Storage-PostObject)\n- [1.39.0](/ruby/docs/reference/google-cloud-storage/1.39.0/Google-Cloud-Storage-PostObject)\n- [1.38.0](/ruby/docs/reference/google-cloud-storage/1.38.0/Google-Cloud-Storage-PostObject)\n- [1.37.0](/ruby/docs/reference/google-cloud-storage/1.37.0/Google-Cloud-Storage-PostObject)\n- [1.36.2](/ruby/docs/reference/google-cloud-storage/1.36.2/Google-Cloud-Storage-PostObject)\n- [1.35.0](/ruby/docs/reference/google-cloud-storage/1.35.0/Google-Cloud-Storage-PostObject) \nReference documentation and code samples for the Cloud Storage API class Google::Cloud::Storage::PostObject.\n\nPostObject represents the URL, fields, and values needed to upload\nobjects via html forms. \n\nInherits\n--------\n\n- Object\n\nExamples\n--------\n\nUsing Bucket#post_object (V2): \n\n```ruby\nrequire \"google/cloud/storage\"\n\nstorage = Google::Cloud::Storage.new\n\nbucket = storage.bucket \"my-todo-app\"\npost = bucket.post_object \"avatars/heidi/400x400.png\"\n\npost.url #=\u003e \"https://storage.googleapis.com\"\npost.fields[:key] #=\u003e \"my-todo-app/avatars/heidi/400x400.png\"\npost.fields[:GoogleAccessId] #=\u003e \"0123456789@gserviceaccount.com\"\npost.fields[:signature] #=\u003e \"ABC...XYZ=\"\npost.fields[:policy] #=\u003e \"ABC...XYZ=\"\n```\n\nUsing Bucket#generate_signed_post_policy_v4 (V4): \n\n```ruby\nrequire \"google/cloud/storage\"\n\nstorage = Google::Cloud::Storage.new\n\nbucket = storage.bucket \"my-todo-app\"\nconditions = [[\"starts-with\",\"$acl\",\"public\"]]\npost = bucket.generate_signed_post_policy_v4 \"avatars/heidi/400x400.png\", expires: 10, conditions: conditions\n\npost.url #=\u003e \"https://storage.googleapis.com/my-todo-app/\"\npost.fields[\"key\"] #=\u003e \"my-todo-app/avatars/heidi/400x400.png\"\npost.fields[\"policy\"] #=\u003e \"ABC...XYZ\"\npost.fields[\"x-goog-algorithm\"] #=\u003e \"GOOG4-RSA-SHA256\"\npost.fields[\"x-goog-credential\"] #=\u003e \"cred@pid.iam.gserviceaccount.com/20200123/auto/storage/goog4_request\"\npost.fields[\"x-goog-date\"] #=\u003e \"20200128T000000Z\"\npost.fields[\"x-goog-signature\"] #=\u003e \"4893a0e...cd82\"\n```\n\nMethods\n-------\n\n### #fields\n\n def fields() -\u003e Hash\n\nThe input fields that must be included in the\nform. Each key/value pair should be set as an input tag's name and\nvalue. \n**Returns**\n\n- (Hash) --- the current value of fields\n\n### #url\n\n def url() -\u003e String\n\nThe URL the form must post to. \n**Returns**\n\n- (String) --- the current value of url"]]