3 min read

Source: Roblox Creator Hub · CC BY 4.0 · View source · Code samples: MIT Imported 2026-10-03. Formatting adapted for this site.

POST /v1/users/{userId}/configuration/security-key/enable — openapi

Initiates security key registration by providing credential creation options.

Endpoint

Method: POST

Path: /v1/users/{userId}/configuration/security-key/enable

Servers:

Parameters

NameLocationRequiredDescription
userIdpathtrueThe user ID.
[
  {
    "in": "path",
    "name": "userId",
    "description": "The user ID.",
    "required": true,
    "schema": {
      "type": "integer",
      "format": "int64"
    }
  }
]

Request Body

{
  "$ref": "#/components/requestBodies/Roblox.TwoStepVerification.Api.EnableTwoStepVerificationRequest"
}

Responses

StatusDescription
200OK
4002: The user ID is invalid. 4: The password is invalid.
4010: Authorization has been denied for this request.
4030: Token Validation Failed 9: The two step verification configuration is invalid for this action. 16: Reached limit of security keys registered.
5037: Two step verification is currently under maintenance.
{
  "200": {
    "description": "OK",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/Roblox.TwoStepVerification.Api.EnableSecurityKeyResponse"
        }
      },
      "text/json": {
        "schema": {
          "$ref": "#/components/schemas/Roblox.TwoStepVerification.Api.EnableSecurityKeyResponse"
        }
      }
    }
  },
  "400": {
    "description": "2: The user ID is invalid.\r\n4: The password is invalid."
  },
  "401": {
    "description": "0: Authorization has been denied for this request."
  },
  "403": {
    "description": "0: Token Validation Failed\r\n9: The two step verification configuration is invalid for this action.\r\n16: Reached limit of security keys registered."
  },
  "503": {
    "description": "7: Two step verification is currently under maintenance."
  }
}

Authentication

{
  "security": [
    {
      "roblox-legacy-cookie": []
    }
  ],
  "securitySchemes": {
    "roblox-api-key": {
      "type": "apiKey",
      "description": "A configurable key that allows granular access to Roblox resources. See https://create.roblox.com/docs/cloud/auth/api-keys for more information.",
      "name": "x-api-key",
      "in": "header"
    },
    "roblox-legacy-cookie": {
      "type": "apiKey",
      "description": "A browser cookie that represents the identity of a Roblox user. DO NOT SHARE THIS. Sharing this will allow someone to log in as you and to steal your Robux and items. We do not recommend using cookies to call endpoints. When possible, use API keys with the x-api-key header or OAuth 2.0 instead for authentication.",
      "in": "cookie",
      "name": ".ROBLOSECURITY"
    },
    "roblox-oauth2": {
      "type": "oauth2",
      "description": "Build or authorize apps to access Roblox resources. See https://create.roblox.com/docs/cloud/auth/oauth2-overview for more information.",
      "flows": {
        "authorizationCode": {
          "authorizationUrl": "https://apis.roblox.com/oauth/v1/authorize",
          "tokenUrl": "https://apis.roblox.com/oauth/v1/token",
          "refreshUrl": "https://apis.roblox.com/oauth/v1/token",
          "scopes": {}
        }
      }
    }
  }
}

Complete Operation Definition

{
  "tags": [
    "Accounts"
  ],
  "summary": "Initiates security key registration by providing credential creation options.",
  "parameters": [
    {
      "in": "path",
      "name": "userId",
      "description": "The user ID.",
      "required": true,
      "schema": {
        "type": "integer",
        "format": "int64"
      }
    }
  ],
  "requestBody": {
    "$ref": "#/components/requestBodies/Roblox.TwoStepVerification.Api.EnableTwoStepVerificationRequest"
  },
  "responses": {
    "200": {
      "description": "OK",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Roblox.TwoStepVerification.Api.EnableSecurityKeyResponse"
          }
        },
        "text/json": {
          "schema": {
            "$ref": "#/components/schemas/Roblox.TwoStepVerification.Api.EnableSecurityKeyResponse"
          }
        }
      }
    },
    "400": {
      "description": "2: The user ID is invalid.\r\n4: The password is invalid."
    },
    "401": {
      "description": "0: Authorization has been denied for this request."
    },
    "403": {
      "description": "0: Token Validation Failed\r\n9: The two step verification configuration is invalid for this action.\r\n16: Reached limit of security keys registered."
    },
    "503": {
      "description": "7: Two step verification is currently under maintenance."
    }
  },
  "servers": [
    {
      "url": "https://twostepverification.roblox.com"
    }
  ],
  "x-roblox-engine-usability": {
    "apiKeyWithHttpService": false
  },
  "security": [
    {
      "roblox-legacy-cookie": []
    }
  ],
  "externalDocs": {
    "url": "https://create.roblox.com/docs/cloud/reference/features/accounts#twostepverification_post_v1_users__userId__configuration_security_key_enable"
  }
}