Hwo to find all overrides below a prim

This can get tricky because you need to query the data pre-composition a layer at a time. For your case, you may be talking about overrides in a single layer so it may not be too hard. I recently wrote this code figure out spec authored within variants. I think the concepts in this snippet will apply to what you want to do:

import omni.usd
from pxr import Usd, Sdf
import json
​
​
def get_specs_in_variants(layer:Sdf.Layer, prim_path, skip_prim_overs=True):
    """ Gets the paths for authored specs in variants
        Args:
            layer: The SdfLayer to traverse
            prim_path: The prim_path where the VariantSets are authored.
            skip_prim_overs: Skip prims with over specifier.
    """
    prim_spec = layer.GetPrimAtPath(prim_path)
    specs = {}
    for vset_spec in prim_spec.variantSets:
        specs[vset_spec.name] = {}
        for variant_spec in vset_spec.variants:
            print(variant_spec.primSpec)
            specs[vset_spec.name][variant_spec.name] = {"properties":[], "prims":[]}
​
            def visit(path):
                if path.IsPrimPath():
                    if skip_prim_overs:
                        prim:Sdf.PrimSpec = layer.GetPrimAtPath(path)
                        if prim.specifier != Sdf.SpecifierOver:
                            specs[vset_spec.name][variant_spec.name]["prims"].append(path)
                    else:
                        specs[vset_spec.name][variant_spec.name]["prims"].append(path)
​
                elif path.IsPropertyPath():
                    specs[vset_spec.name][variant_spec.name]["properties"].append(path)
​
            layer.Traverse(variant_spec.primSpec.path, visit)
    
    return specs
​
​
stage = omni.usd.get_context().get_stage()
layer:Sdf.Layer = Sdf.Layer.FindOrOpen(stage.GetRootLayer().identifier)
specs = get_specs_in_variants(layer, layer.defaultPrim)
print(json.dumps(specs, sort_keys=True, indent=4, default=lambda obj: str(obj) if isinstance(obj, Sdf.Path) else obj))

Here’s a sample stage if you’re curious to test my function:
VariantSetWithLocalDefaults.usda (5.3 KB)