class_docstr: Typed objects that can be logged with `wandb.log()` and visualized by wandb.
  
  The objects will be serialized as JSON and always have a _type attribute that
  indicates how to interpret the other fields.
class_docstr_tok: ["Typed","objects","that","can","be","logged","with","`","wandb.log","(",")","`","and","visualized","by","wandb",".","The","objects","will","be","serialized","as","JSON","and","always","have","a","_type","attribute","that","indicates","how","to","interpret","the","other","fields","."]
code: def _get_artifact_entry_latest_ref_url(self) -> Optional[str]:
      if (
          self._artifact_target
          and self._artifact_target.name
          and self._artifact_target.artifact._client_id is not None
          and self._artifact_target.artifact._final
          and _server_accepts_client_ids()
      ):
          return "wandb-client-artifact://{}:latest/{}".format(
              self._artifact_target.artifact._sequence_client_id,
              type(self).with_suffix(self._artifact_target.name),
          )
      # Else if we do not support client IDs, then block on upload
      # Note: this is old behavior just to stay backwards compatible
      # with older server versions. This code path should be removed
      # once those versions are no longer supported. This path uses a .wait
      # which blocks the user process on artifact upload.
      elif (
          self._artifact_target
          and self._artifact_target.name
          and self._artifact_target.artifact._is_draft_save_started()
          and not util._is_offline()
          and not _server_accepts_client_ids()
      ):
          self._artifact_target.artifact.wait()
          ref_entry = self._artifact_target.artifact.get_entry(
              type(self).with_suffix(self._artifact_target.name)
          )
          return str(ref_entry.ref_url())
      return None
  
imports: from typing import TYPE_CHECKING, Any, ClassVar, Dict, List, Optional, Type, Union
  from wandb import util
label_desc: Use image node_id 13 for calling the WBValue obj's underlying member method code with example usage: obj._get_artifact_entry_latest_ref_url() and returns: None, str, str