code: @BetaApi
    public final Operation insertInstanceTemplate(
        String project, InstanceTemplate instanceTemplateResource) {
  
      InsertInstanceTemplateHttpRequest request =
          InsertInstanceTemplateHttpRequest.newBuilder()
              .setProject(project)
              .setInstanceTemplateResource(instanceTemplateResource)
              .build();
      return insertInstanceTemplate(request);
    }
docs: Creates an instance template in the specified project using the data that is included in the
  request. If you are creating a new template to update an existing instance group, your new
  instance template must use the same network or, if applicable, the same subnetwork as the
  original template.
  
  <p>Sample code:
  
  <pre><code>
  try (InstanceTemplateClient instanceTemplateClient = InstanceTemplateClient.create()) {
  ProjectName project = ProjectName.of("[PROJECT]");
  InstanceTemplate instanceTemplateResource = InstanceTemplate.newBuilder().build();
  Operation response = instanceTemplateClient.insertInstanceTemplate(project.toString(), instanceTemplateResource);
  }
  </code></pre>
  
  @param project Project ID for this request.
  @param instanceTemplateResource An Instance Template resource. (== resource_for
  beta.instanceTemplates ==) (== resource_for v1.instanceTemplates ==)
  @throws com.google.api.gax.rpc.ApiException if the remote call fails