com.atiproto.payment.item.create

atiproto.com

Documentation

Create a item on a DID or specific record. Creates or adds to a cart and returns a checkout URL.

main procedure

Create a item on a DID or specific record. Creates or adds to a cart and returns a checkout URL.

Input

Encodingapplication/json
amount integer Required

Tip amount in cents

cartUri stringat-uri Optional

AT-URI of an existing cart to add this item to. If omitted, a new cart is created.

currency string Required

ISO 4217 currency code

maxLength: 3 bytes
isPrivate boolean Optional

If true, the recipient (subject) and recordUri are stored only in atiproto's private database and are omitted from the PDS item record.

message string Optional

Optional message (max 500 chars)

maxLength: 5000 bytesmaxGraphemes: 500 graphemes
recordUri stringat-uri Optional

AT-URI of specific record being tipped

redirectUrl stringuri Optional

URL to redirect to after checkout completes

subject stringdid Required

DID of the user being tipped

Output

Encodingapplication/json
cartUri stringat-uri Optional

URI of the cart record in PDS

checkoutUrl stringuri Optional

Checkout URL hosted by atiproto

itemUri stringat-uri Optional

URI of the item record in PDS

Try It

Requests are sent directly from your browser. Some servers may block requests due to CORS.

Base URL for XRPC calls (e.g., https://bsky.social)
Enter valid JSON for the request body
View raw schema
{
  "type": "procedure",
  "input": {
    "schema": {
      "type": "object",
      "required": [
        "subject",
        "amount",
        "currency"
      ],
      "properties": {
        "amount": {
          "type": "integer",
          "description": "Tip amount in cents"
        },
        "cartUri": {
          "type": "string",
          "format": "at-uri",
          "description": "AT-URI of an existing cart to add this item to. If omitted, a new cart is created."
        },
        "message": {
          "type": "string",
          "maxLength": 5000,
          "description": "Optional message (max 500 chars)",
          "maxGraphemes": 500
        },
        "subject": {
          "type": "string",
          "format": "did",
          "description": "DID of the user being tipped"
        },
        "currency": {
          "type": "string",
          "maxLength": 3,
          "description": "ISO 4217 currency code"
        },
        "workflow": {
          "ref": "com.atiproto.actions#inboundWorkflow",
          "type": "ref",
          "description": "Workflow callback envelope. Present on agent-driven callbacks; absent on initial calls."
        },
        "isPrivate": {
          "type": "boolean",
          "description": "If true, the recipient (subject) and recordUri are stored only in atiproto's private database and are omitted from the PDS item record."
        },
        "recordUri": {
          "type": "string",
          "format": "at-uri",
          "description": "AT-URI of specific record being tipped"
        },
        "redirectUrl": {
          "type": "string",
          "format": "uri",
          "description": "URL to redirect to after checkout completes"
        }
      }
    },
    "encoding": "application/json"
  },
  "output": {
    "schema": {
      "type": "object",
      "properties": {
        "cart": {
          "ref": "com.atiproto.cart#view",
          "type": "ref",
          "description": "The cart record (new or updated)"
        },
        "item": {
          "ref": "com.atiproto.item#view",
          "type": "ref",
          "description": "The created item record (status: pending)"
        },
        "cartUri": {
          "type": "string",
          "format": "at-uri",
          "description": "URI of the cart record in PDS"
        },
        "itemUri": {
          "type": "string",
          "format": "at-uri",
          "description": "URI of the item record in PDS"
        },
        "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 hosted by atiproto"
        }
      }
    },
    "encoding": "application/json"
  },
  "description": "Create a item on a DID or specific record. Creates or adds to a cart and returns a checkout URL."
}

Lexicon Garden

@