games.atplay.game.createInvitation

atplay.games

Documentation

Invite other players to a game. The appview writes the invitation to the caller's repo, where the invitees will find it. The state must already be the output of the initiator's own first resolve (see ADR 0006).

main procedure

Invite other players to a game. The appview writes the invitation to the caller's repo, where the invitees will find it. The state must already be the output of the initiator's own first resolve (see ADR 0006).

Input

Encodingapplication/json
otherPlayers array Optional

Array of DIDs for other players in the game

minLength: 1 items
parameters ref#parameters Optional

Any parameters of play used by the game logic

uri string Required

The AT-URI this invitation should be written to. Only its record key is used, and the caller mints it so anything keyed to the invitation — its secrets, above all — can be stored before the game is published.

maxLength: 512 bytes

Output

Encodingapplication/json
cid string Optional

No description available.

uri string Required

No description available.

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": [
        "uri"
      ],
      "properties": {
        "uri": {
          "type": "string",
          "maxLength": 512,
          "description": "The AT-URI this invitation should be written to. Only its record key is used, and the caller mints it so anything keyed to the invitation — its secrets, above all — can be stored before the game is published."
        },
        "game": {
          "ref": "games.atplay.game.release",
          "type": "ref"
        },
        "state": {
          "ref": "games.atplay.game.state",
          "type": "ref"
        },
        "parameters": {
          "ref": "#parameters",
          "type": "ref",
          "description": "Any parameters of play used by the game logic"
        },
        "otherPlayers": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "did"
          },
          "minLength": 1,
          "description": "Array of DIDs for other players in the game"
        }
      }
    },
    "encoding": "application/json"
  },
  "output": {
    "schema": {
      "type": "object",
      "required": [
        "uri"
      ],
      "properties": {
        "cid": {
          "type": "string",
          "maxLength": 256
        },
        "uri": {
          "type": "string",
          "maxLength": 512
        }
      }
    },
    "encoding": "application/json"
  },
  "description": "Invite other players to a game. The appview writes the invitation to the caller's repo, where the invitees will find it. The state must already be the output of the initiator's own first resolve (see ADR 0006)."
}

Lexicon Garden

@