diff --git a/google/cloud/storage/_signing.py b/google/cloud/storage/_signing.py
index 80c97c7..8e18bda 100644
--- a/google/cloud/storage/_signing.py
+++ b/google/cloud/storage/_signing.py
@@ -660,14 +660,14 @@ def _sign_message(message, access_token, service_account_email):
     message = _helpers._to_bytes(message)
 
     method = "POST"
-    url = "https://iam.googleapis.com/v1/projects/-/serviceAccounts/{}:signBlob?alt=json".format(
+    url = "https://iamcredentials.googleapis.com/v1/projects/-/serviceAccounts/{}:signBlob?alt=json".format(
         service_account_email
     )
     headers = {
         "Authorization": "Bearer " + access_token,
         "Content-type": "application/json",
     }
-    body = json.dumps({"bytesToSign": base64.b64encode(message).decode("utf-8")})
+    body = json.dumps({"payload": base64.b64encode(message).decode("utf-8")})
 
     request = requests.Request()
     response = request(url=url, method=method, body=body, headers=headers)
@@ -678,7 +678,7 @@ def _sign_message(message, access_token, service_account_email):
         )
 
     data = json.loads(response.data.decode("utf-8"))
-    return data["signature"]
+    return data["signedBlob"]
 
 
 def _url_encode(query_params):

IAM SignBlob and SignJwt decommissioned.
#### Is your feature request related to a problem? Please describe.
I received a notification from GCP alerting that SignBlob and SignJwt will be decommissioned and this library still using it. Here's a document describing the migration:
https://cloud.google.com/iam/docs/migrating-to-credentials-api

Here's code in this library that uses the deprecated api:
https://github.com/googleapis/python-storage/blob/62d1543e18040b286b23464562aa6eb998074c54/google/cloud/storage/_signing.py#L663-L664

#### Describe the solution you'd like
The migration document describes the changes necessary.
diff --git a/tests/unit/test__signing.py b/tests/unit/test__signing.py
index 5f9219b..1a3c383 100644
--- a/tests/unit/test__signing.py
+++ b/tests/unit/test__signing.py
@@ -678,7 +678,7 @@ class Test_sign_message(unittest.TestCase):
 
     def test_sign_bytes(self):
         signature = "DEADBEEF"
-        data = {"signature": signature}
+        data = {"signedBlob": signature}
         request = make_request(200, data)
         with mock.patch("google.auth.transport.requests.Request", return_value=request):
             returned_signature = self._call_fut(

pip install -e .[dev]
parse_log_pytest
requirements.txt
pytest pytest-cov mock
apt-get update apt-get install -y gcc
3.9
requirements/base.txt
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
cachetools==4.2.4
certifi==2025.1.31
charset-normalizer==3.4.1
coverage==7.8.0
exceptiongroup==1.2.2
google-api-core==2.10.2
google-auth==1.35.0
google-cloud-core==1.7.3
-e git+https://github.com/googleapis/python-storage.git@4d76e3882210ed2818a43256265f6df31348d410#egg=google_cloud_storage
google-resumable-media==0.5.1
googleapis-common-protos==1.69.2
idna==3.10
iniconfig==2.1.0
mock==5.2.0
packaging==24.2
pluggy==1.5.0
protobuf==4.25.6
pyasn1==0.6.1
pyasn1_modules==0.4.2
pytest==8.3.5
pytest-cov==6.0.0
requests==2.32.3
rsa==4.9
six==1.17.0
tomli==2.2.1
urllib3==2.3.0

name: python-storage
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=3.0.16=h5eee18b_0
  - pip=25.0=py39h06a4308_0
  - python=3.9.21=he870216_1
  - readline=8.2=h5eee18b_0
  - setuptools=75.8.0=py39h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - tzdata=2025a=h04d1e81_0
  - wheel=0.45.1=py39h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - cachetools==4.2.4
      - certifi==2025.1.31
      - charset-normalizer==3.4.1
      - coverage==7.8.0
      - exceptiongroup==1.2.2
      - google-api-core==2.10.2
      - google-auth==1.35.0
      - google-cloud-core==1.7.3
      - google-resumable-media==0.5.1
      - googleapis-common-protos==1.69.2
      - idna==3.10
      - iniconfig==2.1.0
      - mock==5.2.0
      - packaging==24.2
      - pluggy==1.5.0
      - protobuf==4.25.6
      - pyasn1==0.6.1
      - pyasn1-modules==0.4.2
      - pytest==8.3.5
      - pytest-cov==6.0.0
      - requests==2.32.3
      - rsa==4.9
      - six==1.17.0
      - tomli==2.2.1
      - urllib3==2.3.0
prefix: /opt/conda/envs/python-storage

tests/unit/test__signing.py::Test_sign_message::test_sign_bytes
tests/unit/test__signing.py::Test_get_expiration_seconds_v2::test_w_expiration_int tests/unit/test__signing.py::Test_get_expiration_seconds_v2::test_w_expiration_naive_datetime tests/unit/test__signing.py::Test_get_expiration_seconds_v2::test_w_expiration_none tests/unit/test__signing.py::Test_get_expiration_seconds_v2::test_w_expiration_other_zone_datetime tests/unit/test__signing.py::Test_get_expiration_seconds_v2::test_w_expiration_timedelta_days tests/unit/test__signing.py::Test_get_expiration_seconds_v2::test_w_expiration_timedelta_seconds tests/unit/test__signing.py::Test_get_expiration_seconds_v2::test_w_expiration_utc_datetime tests/unit/test__signing.py::Test_get_expiration_seconds_v2::test_w_invalid_expiration_type tests/unit/test__signing.py::Test_get_expiration_seconds_v4::test_w_expiration_int tests/unit/test__signing.py::Test_get_expiration_seconds_v4::test_w_expiration_int_gt_seven_days tests/unit/test__signing.py::Test_get_expiration_seconds_v4::test_w_expiration_naive_datetime tests/unit/test__signing.py::Test_get_expiration_seconds_v4::test_w_expiration_none tests/unit/test__signing.py::Test_get_expiration_seconds_v4::test_w_expiration_other_zone_datetime tests/unit/test__signing.py::Test_get_expiration_seconds_v4::test_w_expiration_timedelta tests/unit/test__signing.py::Test_get_expiration_seconds_v4::test_w_expiration_utc_datetime tests/unit/test__signing.py::Test_get_expiration_seconds_v4::test_w_invalid_expiration_type tests/unit/test__signing.py::Test_get_signed_query_params_v2::test_it tests/unit/test__signing.py::Test_get_canonical_headers::test_w_dict tests/unit/test__signing.py::Test_get_canonical_headers::test_w_embedded_ws tests/unit/test__signing.py::Test_get_canonical_headers::test_w_list_and_multiples tests/unit/test__signing.py::Test_get_canonical_headers::test_w_none tests/unit/test__signing.py::Test_canonicalize_v2::test_w_headers_and_resumable tests/unit/test__signing.py::Test_canonicalize_v2::test_w_query_parameters tests/unit/test__signing.py::Test_canonicalize_v2::test_wo_headers_or_query_parameters tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_custom_headers_dict tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_custom_headers_list tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_custom_query_parameters_w_none_value tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_custom_query_parameters_w_string_value tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_endpoint tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_expiration_int tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_generation tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_method tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_method_resumable tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_response_disposition tests/unit/test__signing.py::Test_generate_signed_url_v2::test_w_response_type tests/unit/test__signing.py::Test_generate_signed_url_v2::test_with_access_token tests/unit/test__signing.py::Test_generate_signed_url_v2::test_with_google_credentials tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_api_access_endpoint tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_content_md5 tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_content_type tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_custom_headers tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_custom_host_header tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_custom_payload_hash_goog tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_custom_query_parameters_w_none_value tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_custom_query_parameters_w_string_value tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_defaults tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_expiration_too_long tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_generation tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_method tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_method_resumable tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_response_disposition tests/unit/test__signing.py::Test_generate_signed_url_v4::test_w_response_type tests/unit/test__signing.py::Test_generate_signed_url_v4::test_with_access_token tests/unit/test__signing.py::Test_sign_message::test_sign_bytes_failure tests/unit/test__signing.py::TestCustomURLEncoding::test_url_encode tests/unit/test__signing.py::TestQuoteParam::test_ascii_symbols tests/unit/test__signing.py::TestQuoteParam::test_bytes tests/unit/test__signing.py::TestQuoteParam::test_quoted_symbols tests/unit/test__signing.py::TestQuoteParam::test_unicode_symbols tests/unit/test__signing.py::TestQuoteParam::test_unquoted_symbols tests/unit/test__signing.py::TestV4Stamps::test_get_v4_now_dtstamps tests/unit/test__signing.py::test_conformance_bucket[test_data0] tests/unit/test__signing.py::test_conformance_bucket[test_data1] tests/unit/test__signing.py::test_conformance_bucket[test_data2] tests/unit/test__signing.py::test_conformance_blob[test_data0] tests/unit/test__signing.py::test_conformance_blob[test_data1] tests/unit/test__signing.py::test_conformance_blob[test_data2] tests/unit/test__signing.py::test_conformance_blob[test_data3] tests/unit/test__signing.py::test_conformance_blob[test_data4] tests/unit/test__signing.py::test_conformance_blob[test_data5] tests/unit/test__signing.py::test_conformance_blob[test_data6] tests/unit/test__signing.py::test_conformance_blob[test_data7] tests/unit/test__signing.py::test_conformance_blob[test_data8] tests/unit/test__signing.py::test_conformance_blob[test_data9] tests/unit/test__signing.py::test_conformance_blob[test_data10] tests/unit/test__signing.py::test_conformance_blob[test_data11]
google/cloud/storage/_signing.py
google/cloud/storage/_signing.py