Upgrading App Engine Admin API to the Latest Release

Use this page to upgrade your apps to use the v1 version of the Admin API. The v1beta4 and v1beta5 versions of the API are no longer supported and scheduled for shut down on January 14, 2019.

Upgrading your apps to the latest version

To upgrade to the latest Admin API version you must make some changes to your app's code.

Version v1 of the API has a few breaking changes due to either deprecated or renamed resources. The changes in version v1 affect the fields and methods across all of the resources in the API, including:

Use the following lists to understand which fields and methods have been deprecated or renamed in the v1 version of the API.

For client libraries, the following lists do not specifically outline changes for any of the libraries. However, you should use these lists to determine where changes to your app are required.

Applications

For Applications resources, you must make the following changes:

Instances

For Instances resources, you must make the following changes:

  • For the REST API:

    • You must now use the startTime and vmDebugEnabled field with the apps.services.versions.instances resource, for example:

      startTimestampstartTime

      vmUnlockedvmDebugEnabled

    • You must now use the parent field with the apps.services.versions.instances resource, for example:

      nameparent

    • For v1beta4 only: All references to modules are now services. In v1, you must now use the services resource, for example: apps.services.versions.instances

      apps.modules.versions.instancesapps.services.versions.instances

      See the Services section below for more information.

  • For the RPC API:

    • You must now use start_time and vm_debug_enabled fields with the google.appengine.v1.Instance resource, for example:

      start_timestampstart_time

      vm_unlockedvm_debug_enabled

    • You must now use the parent field with the google.appengine.v1.ListInstancesRequest resource, for example:

      nameparent

    • For v1beta4 only: All references to module have been replaced with the service resource.

      See the Services section below for more information.

Services

For Services resources, you must make the following changes:

  • For the REST API:

    • You must now use the parent field with the apps.services resource, for example:

      nameparent

    • You must now use the updateMask parameter with the apps.services.patch method, for example:

      maskupdateMask

    • For v1beta4 only: All references to modules are now services. In v1, you must now use the services resource, for example:

      apps.modules.deleteapps.services.delete

      apps.modules.getapps.services.get

      apps.modules.listapps.services.list

      apps.modules.patchapps.services.patch

  • For the RPC API:

    • You must now use the parent field with the google.appengine.v1.ListServicesRequest resource, for example:

      nameparent

    • You must now use the updateMask field with the google.appengine.v1.UpdateServicesRequest resource, for example:

      maskupdate_mask

    • For v1beta4 only: All references to modules are now services. In v1, you must now use the Services interface, for example:

      DeleteModuleDeleteService

      GetModuleGetService

      ListModulesListServices

      UpdateModuleUpdateServices

Versions

For Versions resources, you must make the following changes:

Deployment

The following fields have been removed:

DiskUtilization

The following fields have changed:

  • For the REST API:

    You must now use the targetWriteBytesPerSecond, targetWriteOpsPerSecond, targetReadBytesPerSecond, and targetReadOpsPerSecond fields with the apps.services.versions resources, for example:

    targetWriteBytesPerSectargetWriteBytesPerSecond

    targetWriteOpsPerSectargetWriteOpsPerSecond

    targetReadBytesPerSectargetReadBytesPerSecond

    targetReadOpsPerSectargetReadOpsPerSecond

  • For the RPC API:

    You must now use the target_write_bytes_per_second, target_write_ops_per_second, target_read_bytes_per_second, and target_read_ops_per_secondfields with the google.appengine.v1.DiskUtilization resource, for example:

    target_write_bytes_per_sectarget_write_bytes_per_second

    target_write_ops_per_sectarget_write_ops_per_second

    target_read_bytes_per_sectarget_read_bytes_per_second

    target_read_ops_per_sectarget_read_ops_per_second

NetworkUtilization

The following fields have changed:

  • For the REST API:

    You must now use the targetSentBytesPerSecond, targetSentPacketsPerSecond, targetReceivedBytesPerSecond, and targetReceivedPacketsPerSecondfields with the apps.services.versions resource, for example:

    targetSentBytesPerSectargetSentBytesPerSecond

    targetSentPacketsPerSectargetSentPacketsPerSecond

    targetReceivedBytesPerSectargetReceivedBytesPerSecond

    targetReceivedPacketsPerSectargetReceivedPacketsPerSecond

  • For the RPC API:

    You must now use the target_sent_bytes_per_second, target_sent_packets_per_second, target_received_bytes_per_second, and target_received_packets_per_second fields with the google.appengine.v1.NetworkUtilization resource, for example:

    target_sent_bytes_per_sectarget_sent_bytes_per_second

    target_sent_packets_per_sectarget_sent_packets_per_second

    target_received_bytes_per_sectarget_received_bytes_per_second

    target_received_packets_per_sectarget_received_packets_per_second

OperationMetadataV1

The following fields have changed:

  • You must now use the method field with the google.appengine.v1.OperationMetadataV1 resource, for example:

    operation_typemethod

  • You must now use the OperationMetadataV1 field with the google.appengine.v1.OperationMetadataV1 resource:

    • For v1beta4, replace OperationMetadata, for example:

      OperationMetadataOperationMetadataV1

    • For v1beta5, replace OperationMetadataV1Beta5, for example:

      OperationMetadataV1Beta5OperationMetadataV1

RequestUtilization

The following fields have changed:

  • For the REST API:

    You must now use the targetRequestCountPerSecond field with the apps.services.versions resource, for example:

    targetRequestCountPerSectargetRequestCountPerSecond

  • For the RPC API:

    You must now use the target_request_count_per_second field with the google.appengine.v1.RequestUtilization resource, for example:

    target_request_count_per_sectarget_request_count_per_second

UrlDispatchRule

You must now use the service field with the apps REST API resource and the google.appengine.v1.UrlDispatchRule RPC resource, for example:

UrlDispatchRule.moduleUrlDispatchRule.service