action phantauth_post_user { label: "Create a User Selfie" description: "To create a selfie token from the user data, you need an opaqe string token, which contains the encoded user properties sent in the request.\nLater, the selfie token can be used as a login name. In this case, the user data is included in the selfie token, that is, the user properties are taken from the token.\nBy the use of a selfie token, you can use your own user objects during the authentication process.\n\nIts use, however, is limited by its relatively large size (more than 100 characters), which exceeds the maximum size of the user name in several systems." provider: phantauth method: POST path: "/user" encoding: json input: { type: "object" required: ["sub"] properties: { "@id": { type: "string" description: "The URL of the user's JSON representation." } address: { type: "object" description: "The user's preferred postal address." properties: { country: { type: "string" description: "Country name component." } formatted: { type: "string" description: "Full mailing address, formatted for display or use on a mailing label. This field MAY contain multiple lines, separated by newlines. Newlines can be represented either as a carriage return/line feed pair or as a single line feed character." } locality: { type: "string" description: "City or locality component." } postal_code: { type: "string" description: "Zip code or postal code component." } region: { type: "string" description: "State, province, prefecture, or region component." } street_address: { type: "string" description: "Full street address component, which MAY include house number, street name, post office box, and multi-line extended street address information. This field MAY contain multiple lines, separated by newlines. Newlines can be represented either as a carriage return/line feed pair or as a single line feed character." } } } birthdate: { type: "string" description: "The user's birthday, represented as an ISO 8601:2004 [ISO8601‑2004] YYYY-MM-DD format." } email: { type: "string" description: "The user's preferred email address." } email_verified: { type: "boolean" description: "True if the user's e-mail address has been verified; otherwise false." } family_name: { type: "string" description: "The user's surname(s) or last name(s)." } gender: { type: "string" description: "The enduser's gender. Possible values are: female, male, and unknown." } given_name: { type: "string" description: "The user's given name(s) or first name(s)." } locale: { type: "string" description: "The user's locale, represented as a BCP47 [RFC5646] language tag. It is an ISO 639-1 Alpha-2 language code in lowercase and an ISO 3166-1 Alpha-2 country code in uppercase letters, separated by a dash." } me: { type: "string" description: "The simplified URL of the user's profile page." } middle_name: { type: "string" description: "The user's middle name(s)." } name: { type: "string" description: "The user's full name in displayable form, including all name parts, possibly including titles and suffixes, ordered according to the enduser's locale and preferences." } nickname: { type: "string" description: "A casual name of the User that may or may not be the same as the given_name." } password: { type: "string" description: "The user's generated password." } phone_number: { type: "string" description: "The user's preferred telephone number." } phone_number_verified: { type: "boolean" description: "True if the enduser's phone number has been verified; otherwise false." } picture: { type: "string" description: "The URL of the user's profile picture." } preferred_username: { type: "string" description: "A shorthand name by which the user wishes to be referred to at the Relying Party." } profile: { type: "string" description: "The URL of the user's profile page." } sub: { type: "string" description: "Subject - User identifier at the issuer." } uid: { type: "string" description: "The user's simplified, shortened identifier at the Issuer." } updated_at: { type: "number" description: "The time when the User's information was last updated. Its value is a JSON number representing the number of seconds from 1970-01-01T0:0:0Z as measured in UTC until the date/time." } webmail: { type: "string" description: "The URL of user's mailbox in a webmail application." } website: { type: "string" description: "The URL of the user's webpage or blog." } zoneinfo: { type: "string" description: "A string from the zoneinfo time zone database representing the user's time zone. For example, Europe/Paris or America/Los_Angeles." } } } output: { type: "object" additionalProperties: true } }