WorkOS · Schema

CreateUserlandUserDto

AuthenticationIdentity ProviderSSOSAMLOIDCSCIMDirectory SyncAuthorizationFGAAudit LogsMFAB2B SaaSAgentsMCP
View JSON Schema on GitHub

JSON Schema

workos-createuserlanduserdto-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/CreateUserlandUserDto",
  "title": "CreateUserlandUserDto",
  "allOf": [
    {
      "type": "object",
      "properties": {
        "email": {
          "type": "string",
          "format": "email",
          "description": "The email address of the user.",
          "example": "[email protected]"
        },
        "first_name": {
          "type": [
            "string",
            "null"
          ],
          "description": "The first name of the user.",
          "example": "Marcelina"
        },
        "last_name": {
          "type": [
            "string",
            "null"
          ],
          "description": "The last name of the user.",
          "example": "Davis"
        },
        "email_verified": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "Whether the user's email has been verified.",
          "example": true
        },
        "metadata": {
          "type": [
            "object",
            "null"
          ],
          "additionalProperties": {
            "type": "string",
            "maxLength": 600
          },
          "maxProperties": 50,
          "example": {
            "timezone": "America/New_York"
          },
          "description": "Object containing metadata key/value pairs associated with the user.",
          "propertyNames": {
            "maxLength": 40
          }
        },
        "external_id": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 128,
          "pattern": "^[\\x00-\\x7F]+$",
          "description": "The external ID of the user.",
          "example": "f1ffa2b2-c20b-4d39-be5c-212726e11222"
        }
      },
      "required": [
        "email"
      ]
    },
    {
      "oneOf": [
        {
          "type": "object",
          "not": {
            "anyOf": [
              {
                "properties": {
                  "password": {
                    "x-exclude-from-lint": true
                  }
                },
                "required": [
                  "password"
                ]
              },
              {
                "properties": {
                  "password_hash": {
                    "x-exclude-from-lint": true
                  }
                },
                "required": [
                  "password_hash"
                ]
              },
              {
                "properties": {
                  "password_hash_type": {
                    "x-exclude-from-lint": true
                  }
                },
                "required": [
                  "password_hash_type"
                ]
              }
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "password": {
              "type": [
                "string",
                "null"
              ],
              "description": "The password to set for the user. Mutually exclusive with `password_hash` and `password_hash_type`.",
              "example": "strong_password_123!"
            }
          },
          "required": [
            "password"
          ],
          "not": {
            "anyOf": [
              {
                "properties": {
                  "password_hash": {
                    "x-exclude-from-lint": true
                  }
                },
                "required": [
                  "password_hash"
                ]
              },
              {
                "properties": {
                  "password_hash_type": {
                    "x-exclude-from-lint": true
                  }
                },
                "required": [
                  "password_hash_type"
                ]
              }
            ]
          }
        },
        {
          "type": "object",
          "properties": {
            "password_hash": {
              "type": "string",
              "description": "The hashed password to set for the user. Required with `password_hash_type`. Mutually exclusive with `password`.",
              "example": "$2a$10$N9qo8uLOickgx2ZMRZoMyeIjZAgcfl7p92ldGxad68LJZdL17lhWy"
            },
            "password_hash_type": {
              "type": "string",
              "enum": [
                "bcrypt",
                "firebase-scrypt",
                "ssha",
                "scrypt",
                "pbkdf2",
                "argon2"
              ],
              "description": "The algorithm originally used to hash the password, used when providing a `password_hash`. Required with `password_hash`. Mutually exclusive with `password`.",
              "example": "bcrypt"
            }
          },
          "required": [
            "password_hash",
            "password_hash_type"
          ],
          "not": {
            "anyOf": [
              {
                "properties": {
                  "password": {
                    "x-exclude-from-lint": true
                  }
                },
                "required": [
                  "password"
                ]
              }
            ]
          }
        }
      ]
    }
  ],
  "x-mutually-exclusive-body-groups": {
    "password": {
      "optional": true,
      "variants": {
        "plaintext": [
          "password"
        ],
        "hashed": [
          "password_hash",
          "password_hash_type"
        ]
      }
    }
  }
}