May work only in object mode. I added a plane and deleted one vertex, added the skin modifier and decreased the radius of one vertex. obj = bpy.data.objects['Plane'] skin_verts = [v for v in obj.data.skin_vertices[0].data] each vert in `skin_verts` will have `radius, use_loose, use_root` to read and write. Currently radii appear to be represented as 2-float arrays and not as Vector. >>> for v in obj.data.skin_vertices[0].data: ... print(v.radius[:]) ... (0.25, 0.25) (0.25, 0.25) (0.08836718648672104, 0.08836718648672104) ... Writing radii (be in object mode), each radius has two components which do not need to be the same value. For example <kbd>ctrl</kbd><kbd>a</kbd> lets you constrain the effect on radius per axis with <kbd>shift</kbd><kbd>x</kbd>,<kbd>y</kbd>. >>> for v in obj.data.skin_vertices[0].data: ... v.radius = [c*2 for c in v.radius]