def METHOD_NAME(metadata, start=None, color=None, scope=OPENC3_SCOPE):
    if type(metadata) != dict:
        raise RuntimeError(
            f"metadata must be a Hash: {metadata} is a {metadata.__class__.__name__}"
        )
    if not color:
        color = "#003784"
    data = {"color": color, "metadata": metadata}
    if start:
        data["start"] = time.asctime(time.gmtime(start))
    response = openc3.script.API_SERVER.request(
        "post", "/openc3-api/metadata", data=data, json=True, scope=scope
    )
    if not response:
        raise RuntimeError(f"Failed to set metadata due to {response.status_code}")
    elif response.status_code == 409:
        raise RuntimeError(
            "Metadata overlaps existing metadata. Did you metadata_set within 1s of another?"
        )
    elif response.status_code != 201:
        raise RuntimeError(f"Failed to set metadata due to {response.status_code}")
    return json.loads(response.text)