Clone an existing cart, creating new item and subscription records. Useful for reopening expired carts or repeating payments.
Input
application/jsonredirectUrl
stringuri
Optional
URI to redirect to after checkout is complete/cancelled
uri
stringat-uri
Required
AT-URI of the cart to clone
workflow
refcom.atiproto.actions#inboundWorkflow
Optional
Workflow callback envelope. Present on agent-driven callbacks; absent on initial calls.
Output
application/jsoncart
refcom.atiproto.cart#view
Optional
The new cart record
cartUri
stringat-uri
Optional
URI of the new cart record
checkoutUrl
stringuri
Optional
Checkout URL for the new cart
items
array
Optional
Newly created item records
subscriptions
array
Optional
Newly created subscription records
workflow
refcom.atiproto.actions#outboundWorkflow
Optional
Workflow envelope. When present, the agent runs the actions and calls back. When absent, this is the final native result.
Try It
Requests are sent directly from your browser. Some servers may block requests due to CORS.
View raw schema
{
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"uri"
],
"properties": {
"uri": {
"type": "string",
"format": "at-uri",
"description": "AT-URI of the cart to clone"
},
"workflow": {
"ref": "com.atiproto.actions#inboundWorkflow",
"type": "ref",
"description": "Workflow callback envelope. Present on agent-driven callbacks; absent on initial calls."
},
"redirectUrl": {
"type": "string",
"format": "uri",
"description": "URI to redirect to after checkout is complete/cancelled"
}
}
},
"encoding": "application/json"
},
"output": {
"schema": {
"type": "object",
"properties": {
"cart": {
"ref": "com.atiproto.cart#view",
"type": "ref",
"description": "The new cart record"
},
"items": {
"type": "array",
"items": {
"ref": "com.atiproto.item#view",
"type": "ref"
},
"description": "Newly created item records"
},
"cartUri": {
"type": "string",
"format": "at-uri",
"description": "URI of the new cart record"
},
"workflow": {
"ref": "com.atiproto.actions#outboundWorkflow",
"type": "ref",
"description": "Workflow envelope. When present, the agent runs the actions and calls back. When absent, this is the final native result."
},
"checkoutUrl": {
"type": "string",
"format": "uri",
"description": "Checkout URL for the new cart"
},
"subscriptions": {
"type": "array",
"items": {
"ref": "com.atiproto.subscription#view",
"type": "ref"
},
"description": "Newly created subscription records"
}
}
},
"encoding": "application/json"
},
"description": "Clone an existing cart, creating new item and subscription records. Useful for reopening expired carts or repeating payments."
}