Skip to main content
Permission: Write · Workspace: required (from goody_workspaces_list) Builds a shareable preview link and prices a gift that has not been sent — nothing is charged, nothing is sent. This is the step that lets the user see the assembled gift (card, message, products) at a real URL and review the total before sending. Lead your reply with the preview_url, relay the total_price, and only after the user confirms call goody_order_batches_create with the same inputs.
There is no payment_method_id here — previewing neither charges nor needs a funding source.

Parameters

workspace_id
string
required
Workspace UUID — from goody_workspaces_list. Scopes the preview to this workspace.
card_id
string
required
Card UUID — from goody_cards_list. Picking a real card means the preview shows the actual card the recipient will see.
product_id
string
A single product UUID — from goody_products_search. Use this or cart, never both.
quantity
integer
default:"1"
Quantity for product_id. Defaults to 1.
variable_price
integer
Amount to fund, in cents, for a variable-amount Gift of Choice or variable gift card. Must fall within the gift’s [price_min, price_max]. Only applies to product_id.
cart
object
A multi-item cart — an object with an items array (not a bare array). Use this or product_id, never both.
contact_id
string
A single saved-contact UUID — from goody_contacts_search. Use this or recipients. Optional: omit recipients entirely to preview a half-composed gift with a placeholder recipient.
recipients
object[]
The people to send to. Use this or contact_id. Optional here — omit to preview before recipients are known.
message
string
The note shown on the gift card. Use goody_messages_generate to draft one.
from_name
string
The “From” name the recipient sees. Defaults to the authenticated user.
send_method
string
default:"link_single"
How the recipient receives the gift. One of link_single (you share the link yourself), email_and_link (Goody emails each recipient their link), or direct_send (ships a physical product to each recipient — requires a mailing_address on every recipient).

Returns

preview_url
string
A shareable URL that renders the assembled gift — card, message, and products. Lead your reply with this so the user can see exactly what they’re sending.
draft_batch_id
string
UUID of the draft batch the preview was built from.
cart_price
object
The cart subtotal before tax and shipping.
total_price
object
The full total — subtotal, tax, and shipping. Relay this to the user before sending.

Example

"Show me a preview of the Cold Brew Kit for Sarah before sending."
When the user confirms, send it with goody_order_batches_create using the same inputs. For just a number without the link, use goody_order_batches_price; to draft the card message, use goody_messages_generate.