{ "Name": "Account", "Docs": "Account exports web API functions for the account web interface. All its\nmethods are exported under api/. Function calls require valid HTTP\nAuthentication credentials of a user.", "Functions": [ { "Name": "LoginPrep", "Docs": "LoginPrep returns a login token, and also sets it as cookie. Both must be\npresent in the call to Login.", "Params": [], "Returns": [ { "Name": "r0", "Typewords": [ "string" ] } ] }, { "Name": "Login", "Docs": "Login returns a session token for the credentials, or fails with error code\n\"user:badLogin\". Call LoginPrep to get a loginToken.", "Params": [ { "Name": "loginToken", "Typewords": [ "string" ] }, { "Name": "username", "Typewords": [ "string" ] }, { "Name": "password", "Typewords": [ "string" ] } ], "Returns": [ { "Name": "r0", "Typewords": [ "CSRFToken" ] } ] }, { "Name": "Logout", "Docs": "Logout invalidates the session token.", "Params": [], "Returns": [] }, { "Name": "SetPassword", "Docs": "SetPassword saves a new password for the account, invalidating the previous password.\nSessions are not interrupted, and will keep working. New login attempts must use the new password.\nPassword must be at least 8 characters.", "Params": [ { "Name": "password", "Typewords": [ "string" ] } ], "Returns": [] }, { "Name": "Account", "Docs": "Account returns information about the account: full name, the default domain,\nand the destinations (keys are email addresses, or localparts to the default\ndomain). todo: replace with a function that returns the whole account, when\nsherpadoc understands unnamed struct fields.", "Params": [], "Returns": [ { "Name": "r0", "Typewords": [ "string" ] }, { "Name": "r1", "Typewords": [ "Domain" ] }, { "Name": "r2", "Typewords": [ "{}", "Destination" ] } ] }, { "Name": "AccountSaveFullName", "Docs": "", "Params": [ { "Name": "fullName", "Typewords": [ "string" ] } ], "Returns": [] }, { "Name": "DestinationSave", "Docs": "DestinationSave updates a destination.\nOldDest is compared against the current destination. If it does not match, an\nerror is returned. Otherwise newDest is saved and the configuration reloaded.", "Params": [ { "Name": "destName", "Typewords": [ "string" ] }, { "Name": "oldDest", "Typewords": [ "Destination" ] }, { "Name": "newDest", "Typewords": [ "Destination" ] } ], "Returns": [] }, { "Name": "ImportAbort", "Docs": "ImportAbort aborts an import that is in progress. If the import exists and isn't\nfinished, no changes will have been made by the import.", "Params": [ { "Name": "importToken", "Typewords": [ "string" ] } ], "Returns": [] }, { "Name": "Types", "Docs": "Types exposes types not used in API method signatures, such as the import form upload.", "Params": [], "Returns": [ { "Name": "importProgress", "Typewords": [ "ImportProgress" ] } ] } ], "Sections": [], "Structs": [ { "Name": "Domain", "Docs": "Domain is a domain name, with one or more labels, with at least an ASCII\nrepresentation, and for IDNA non-ASCII domains a unicode representation.\nThe ASCII string must be used for DNS lookups. The strings do not have a\ntrailing dot. When using with StrictResolver, add the trailing dot.", "Fields": [ { "Name": "ASCII", "Docs": "A non-unicode domain, e.g. with A-labels (xn--...) or NR-LDH (non-reserved letters/digits/hyphens) labels. Always in lower case. No trailing dot.", "Typewords": [ "string" ] }, { "Name": "Unicode", "Docs": "Name as U-labels. Empty if this is an ASCII-only domain. No trailing dot.", "Typewords": [ "string" ] } ] }, { "Name": "Destination", "Docs": "", "Fields": [ { "Name": "Mailbox", "Docs": "", "Typewords": [ "string" ] }, { "Name": "Rulesets", "Docs": "", "Typewords": [ "[]", "Ruleset" ] }, { "Name": "FullName", "Docs": "", "Typewords": [ "string" ] } ] }, { "Name": "Ruleset", "Docs": "", "Fields": [ { "Name": "SMTPMailFromRegexp", "Docs": "", "Typewords": [ "string" ] }, { "Name": "VerifiedDomain", "Docs": "", "Typewords": [ "string" ] }, { "Name": "HeadersRegexp", "Docs": "", "Typewords": [ "{}", "string" ] }, { "Name": "IsForward", "Docs": "todo: once we implement ARC, we can use dkim domains that we cannot verify but that the arc-verified forwarding mail server was able to verify.", "Typewords": [ "bool" ] }, { "Name": "ListAllowDomain", "Docs": "", "Typewords": [ "string" ] }, { "Name": "AcceptRejectsToMailbox", "Docs": "", "Typewords": [ "string" ] }, { "Name": "Mailbox", "Docs": "", "Typewords": [ "string" ] }, { "Name": "VerifiedDNSDomain", "Docs": "", "Typewords": [ "Domain" ] }, { "Name": "ListAllowDNSDomain", "Docs": "", "Typewords": [ "Domain" ] } ] }, { "Name": "ImportProgress", "Docs": "ImportProgress is returned after uploading a file to import.", "Fields": [ { "Name": "Token", "Docs": "For fetching progress, or cancelling an import.", "Typewords": [ "string" ] } ] } ], "Ints": [], "Strings": [ { "Name": "CSRFToken", "Docs": "", "Values": null } ], "SherpaVersion": 0, "SherpadocVersion": 1 }