The name parameter's value depends on the target resource for the
request, namely
projects
or
organizations.
Each resource type's name value format is described below:
projects.roles.undelete():
projects/{PROJECT_ID}/roles/{CUSTOM_ROLE_ID}. This method undeletes
only custom
roles that
have been created at the project level. Example request URL:
https://iam.googleapis.com/v1/projects/{PROJECT_ID}/roles/{CUSTOM_ROLE_ID}
organizations.roles.undelete():
organizations/{ORGANIZATION_ID}/roles/{CUSTOM_ROLE_ID}. This method
undeletes only custom
roles that
have been created at the organization level. Example request URL:
https://iam.googleapis.com/v1/organizations/{ORGANIZATION_ID}/roles/{CUSTOM_ROLE_ID}
Note: Wildcard (*) values are invalid; you must specify a complete project
ID or organization ID.
string name = 1 [(.google.api.resource_reference) = { ... }
The name parameter's value depends on the target resource for the
request, namely
projects
or
organizations.
Each resource type's name value format is described below:
projects.roles.undelete():
projects/{PROJECT_ID}/roles/{CUSTOM_ROLE_ID}. This method undeletes
only custom
roles that
have been created at the project level. Example request URL:
https://iam.googleapis.com/v1/projects/{PROJECT_ID}/roles/{CUSTOM_ROLE_ID}
organizations.roles.undelete():
organizations/{ORGANIZATION_ID}/roles/{CUSTOM_ROLE_ID}. This method
undeletes only custom
roles that
have been created at the organization level. Example request URL:
https://iam.googleapis.com/v1/organizations/{ORGANIZATION_ID}/roles/{CUSTOM_ROLE_ID}
Note: Wildcard (*) values are invalid; you must specify a complete project
ID or organization ID.
string name = 1 [(.google.api.resource_reference) = { ... }
[[["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-08-16 UTC."],[],[],null,["# Interface UndeleteRoleRequestOrBuilder (3.67.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.67.0 (latest)](/java/docs/reference/google-iam-admin/latest/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.65.0](/java/docs/reference/google-iam-admin/3.65.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.63.0](/java/docs/reference/google-iam-admin/3.63.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.62.0](/java/docs/reference/google-iam-admin/3.62.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.59.0](/java/docs/reference/google-iam-admin/3.59.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.58.0](/java/docs/reference/google-iam-admin/3.58.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.57.0](/java/docs/reference/google-iam-admin/3.57.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.55.0](/java/docs/reference/google-iam-admin/3.55.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.54.0](/java/docs/reference/google-iam-admin/3.54.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.53.0](/java/docs/reference/google-iam-admin/3.53.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.52.0](/java/docs/reference/google-iam-admin/3.52.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.51.0](/java/docs/reference/google-iam-admin/3.51.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.50.0](/java/docs/reference/google-iam-admin/3.50.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.49.0](/java/docs/reference/google-iam-admin/3.49.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.48.0](/java/docs/reference/google-iam-admin/3.48.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.47.0](/java/docs/reference/google-iam-admin/3.47.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.44.0](/java/docs/reference/google-iam-admin/3.44.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.43.0](/java/docs/reference/google-iam-admin/3.43.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.42.0](/java/docs/reference/google-iam-admin/3.42.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.41.0](/java/docs/reference/google-iam-admin/3.41.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.40.0](/java/docs/reference/google-iam-admin/3.40.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.39.0](/java/docs/reference/google-iam-admin/3.39.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.38.0](/java/docs/reference/google-iam-admin/3.38.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.37.0](/java/docs/reference/google-iam-admin/3.37.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.36.0](/java/docs/reference/google-iam-admin/3.36.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.35.0](/java/docs/reference/google-iam-admin/3.35.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.34.0](/java/docs/reference/google-iam-admin/3.34.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.32.0](/java/docs/reference/google-iam-admin/3.32.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.31.0](/java/docs/reference/google-iam-admin/3.31.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.30.0](/java/docs/reference/google-iam-admin/3.30.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.29.0](/java/docs/reference/google-iam-admin/3.29.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.28.0](/java/docs/reference/google-iam-admin/3.28.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.27.0](/java/docs/reference/google-iam-admin/3.27.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.26.0](/java/docs/reference/google-iam-admin/3.26.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.25.0](/java/docs/reference/google-iam-admin/3.25.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.24.0](/java/docs/reference/google-iam-admin/3.24.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.23.0](/java/docs/reference/google-iam-admin/3.23.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.22.0](/java/docs/reference/google-iam-admin/3.22.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.19.0](/java/docs/reference/google-iam-admin/3.19.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.18.0](/java/docs/reference/google-iam-admin/3.18.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.17.0](/java/docs/reference/google-iam-admin/3.17.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.16.0](/java/docs/reference/google-iam-admin/3.16.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.15.0](/java/docs/reference/google-iam-admin/3.15.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.14.0](/java/docs/reference/google-iam-admin/3.14.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.13.0](/java/docs/reference/google-iam-admin/3.13.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.12.0](/java/docs/reference/google-iam-admin/3.12.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.11.0](/java/docs/reference/google-iam-admin/3.11.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.10.0](/java/docs/reference/google-iam-admin/3.10.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.9.0](/java/docs/reference/google-iam-admin/3.9.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.8.0](/java/docs/reference/google-iam-admin/3.8.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.7.0](/java/docs/reference/google-iam-admin/3.7.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.6.0](/java/docs/reference/google-iam-admin/3.6.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.4.0](/java/docs/reference/google-iam-admin/3.4.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.3.0](/java/docs/reference/google-iam-admin/3.3.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.2.0](/java/docs/reference/google-iam-admin/3.2.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.1.0](/java/docs/reference/google-iam-admin/3.1.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [3.0.0](/java/docs/reference/google-iam-admin/3.0.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [2.0.0](/java/docs/reference/google-iam-admin/2.0.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [1.2.5](/java/docs/reference/google-iam-admin/1.2.5/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [1.1.8](/java/docs/reference/google-iam-admin/1.1.8/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder)\n- [0.2.0](/java/docs/reference/google-iam-admin/0.2.0/com.google.iam.admin.v1.UndeleteRoleRequestOrBuilder) \n\n public interface UndeleteRoleRequestOrBuilder extends MessageOrBuilder\n\nImplements\n----------\n\n[MessageOrBuilder](https://cloud.google.com/java/docs/reference/protobuf/latest/com.google.protobuf.MessageOrBuilder.html)\n\nMethods\n-------\n\n### getEtag()\n\n public abstract ByteString getEtag()\n\nUsed to perform a consistent read-modify-write.\n\n`bytes etag = 2;`\n\n### getName()\n\n public abstract String getName()\n\nThe `name` parameter's value depends on the target resource for the\nrequest, namely\n[`projects`](https://cloud.google.com/iam/reference/rest/v1/projects.roles)\nor\n[`organizations`](https://cloud.google.com/iam/reference/rest/v1/organizations.roles).\nEach resource type's `name` value format is described below:\n\n- [`projects.roles.undelete()`](https://cloud.google.com/iam/reference/rest/v1/projects.roles/undelete):\n `projects/{PROJECT_ID}/roles/{CUSTOM_ROLE_ID}`. This method undeletes\n only [custom\n roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that\n have been created at the project level. Example request URL:\n `https://iam.googleapis.com/v1/projects/{PROJECT_ID}/roles/{CUSTOM_ROLE_ID}`\n\n- [`organizations.roles.undelete()`](https://cloud.google.com/iam/reference/rest/v1/organizations.roles/undelete):\n `organizations/{ORGANIZATION_ID}/roles/{CUSTOM_ROLE_ID}`. This method\n undeletes only [custom\n roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that\n have been created at the organization level. Example request URL:\n `https://iam.googleapis.com/v1/organizations/{ORGANIZATION_ID}/roles/{CUSTOM_ROLE_ID}`\n\n Note: Wildcard (\\*) values are invalid; you must specify a complete project\n ID or organization ID.\n\n`string name = 1 [(.google.api.resource_reference) = { ... }`\n\n### getNameBytes()\n\n public abstract ByteString getNameBytes()\n\nThe `name` parameter's value depends on the target resource for the\nrequest, namely\n[`projects`](https://cloud.google.com/iam/reference/rest/v1/projects.roles)\nor\n[`organizations`](https://cloud.google.com/iam/reference/rest/v1/organizations.roles).\nEach resource type's `name` value format is described below:\n\n- [`projects.roles.undelete()`](https://cloud.google.com/iam/reference/rest/v1/projects.roles/undelete):\n `projects/{PROJECT_ID}/roles/{CUSTOM_ROLE_ID}`. This method undeletes\n only [custom\n roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that\n have been created at the project level. Example request URL:\n `https://iam.googleapis.com/v1/projects/{PROJECT_ID}/roles/{CUSTOM_ROLE_ID}`\n\n- [`organizations.roles.undelete()`](https://cloud.google.com/iam/reference/rest/v1/organizations.roles/undelete):\n `organizations/{ORGANIZATION_ID}/roles/{CUSTOM_ROLE_ID}`. This method\n undeletes only [custom\n roles](https://cloud.google.com/iam/docs/understanding-custom-roles) that\n have been created at the organization level. Example request URL:\n `https://iam.googleapis.com/v1/organizations/{ORGANIZATION_ID}/roles/{CUSTOM_ROLE_ID}`\n\n Note: Wildcard (\\*) values are invalid; you must specify a complete project\n ID or organization ID.\n\n`string name = 1 [(.google.api.resource_reference) = { ... }`"]]