{
  "protocol": "signup",
  "imports": [
    {
      "path": "common.avdl",
      "type": "idl"
    }
  ],
  "types": [
    {
      "type": "record",
      "name": "SignupRes",
      "fields": [
        {
          "type": "boolean",
          "name": "passphraseOk",
          "lint": "ignore"
        },
        {
          "type": "boolean",
          "name": "postOk",
          "lint": "ignore"
        },
        {
          "type": "boolean",
          "name": "writeOk",
          "lint": "ignore"
        }
      ]
    }
  ],
  "messages": {
    "checkUsernameAvailable": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        },
        {
          "name": "username",
          "type": "string"
        }
      ],
      "response": null
    },
    "signup": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        },
        {
          "name": "email",
          "type": "string"
        },
        {
          "name": "inviteCode",
          "type": "string"
        },
        {
          "name": "passphrase",
          "type": "string"
        },
        {
          "name": "username",
          "type": "string"
        },
        {
          "name": "deviceName",
          "type": "string"
        },
        {
          "name": "deviceType",
          "type": "DeviceType"
        },
        {
          "name": "storeSecret",
          "type": "boolean"
        },
        {
          "name": "skipMail",
          "type": "boolean"
        },
        {
          "name": "genPGPBatch",
          "type": "boolean"
        }
      ],
      "response": "SignupRes"
    },
    "inviteRequest": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        },
        {
          "name": "email",
          "type": "string"
        },
        {
          "name": "fullname",
          "type": "string"
        },
        {
          "name": "notes",
          "type": "string"
        }
      ],
      "response": null
    },
    "checkInvitationCode": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        },
        {
          "name": "invitationCode",
          "type": "string"
        }
      ],
      "response": null
    },
    "getInvitationCode": {
      "request": [
        {
          "name": "sessionID",
          "type": "int"
        }
      ],
      "response": "string"
    }
  },
  "namespace": "keybase.1"
}