Skip to content

Scripting API

Wedding

from ArtisanPlugin.Scripting import WeddingApi as wedding, PlainBandApi as band

Wedding rings come in two shapes: a set of two rings baked together as one group, and a single band. Both store the same per-ring model, so they share one section.

Create

WeddingBuilderApi.CreateSet(...) builds a set and WeddingBuilderApi.CreateBand(...) a single plain band; see WeddingBuilderApi. The MCP tools are create_wedding_ring and create_plain_band. The single band was the Wedding Band (WeddingBandApi) until October 2026.

Edit - the set

IWedding exposes FirstRing and SecondRing, each a full ring. Editing either regenerates the whole set in place, re-baking both bands, their stones and prongs.

Member of a ringWhat it edits
Metal / SetMetal(metal)e.g. "GOLD_ROSE_18", "PLATINUM"
ProfileProfile asset, width and height of the band
GemsEnabled, shape (round or princess), distribution (full, half, one quarter, custom) and its count, spacing, channel, prongs (none, shared or channel) and drills
from ArtisanPlugin.Scripting import WeddingApi as wedding, Transaction

pair = wedding.All()[0]
with Transaction.Begin("Hers in rose gold with a half row"):
    pair.SecondRing.SetMetal("GOLD_ROSE_18")
    pair.SecondRing.Gems.SetEnabled(True)
    pair.SecondRing.Gems.SetDistribution("Half")

Plain band

IPlainBand is the one-ring counterpart: a single Ring member with exactly the same surface.

b = band.All()[0]
with Transaction.Begin("Wider band, no stones"):
    b.Ring.Profile.SetWidth(4.0)
    b.Ring.Gems.SetEnabled(False)

Queries

Both facades: All(), Find(id), Count(), Selected(), ByLayer(name).