4 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 /thumbnail-personalization-api/v1/universes/{universeId}/personalization/update — openapi

Replaces the homepage thumbnails in an active personalization configuration without changing its identifier or existing statistics.

Endpoint

Method: POST

Path: /thumbnail-personalization-api/v1/universes/{universeId}/personalization/update

Servers:

Parameters

NameLocationRequiredDescription
universeIdpathtrueThe identifier of the universe that owns the configuration.
[
  {
    "name": "universeId",
    "in": "path",
    "description": "The identifier of the universe that owns the configuration.",
    "required": true,
    "schema": {
      "type": "integer",
      "format": "int64"
    }
  }
]

Request Body

The configuration and homepage thumbnails to update.

{
  "description": "The configuration and homepage thumbnails to update.",
  "content": {
    "application/json-patch+json": {
      "schema": {
        "allOf": [
          {
            "$ref": "#/components/schemas/UpdateThumbnailPersonalizationRequest"
          }
        ],
        "description": "The request to update a thumbnail personalization configuration."
      }
    },
    "application/json": {
      "schema": {
        "allOf": [
          {
            "$ref": "#/components/schemas/UpdateThumbnailPersonalizationRequest"
          }
        ],
        "description": "The request to update a thumbnail personalization configuration."
      }
    },
    "text/json": {
      "schema": {
        "allOf": [
          {
            "$ref": "#/components/schemas/UpdateThumbnailPersonalizationRequest"
          }
        ],
        "description": "The request to update a thumbnail personalization configuration."
      }
    },
    "application/*+json": {
      "schema": {
        "allOf": [
          {
            "$ref": "#/components/schemas/UpdateThumbnailPersonalizationRequest"
          }
        ],
        "description": "The request to update a thumbnail personalization configuration."
      }
    }
  },
  "required": true
}

Responses

StatusDescription
200Success
400Bad Request
401Unauthorized
403Forbidden
404Not Found
500Server Error
{
  "200": {
    "description": "Success",
    "content": {
      "application/json": {
        "schema": {
          "type": "string"
        }
      }
    }
  },
  "400": {
    "description": "Bad Request",
    "content": {
      "application/json": {
        "schema": {
          "type": "string"
        }
      }
    }
  },
  "401": {
    "description": "Unauthorized",
    "content": {
      "application/json": {
        "schema": {
          "type": "string"
        }
      }
    }
  },
  "403": {
    "description": "Forbidden",
    "content": {
      "application/json": {
        "schema": {
          "type": "string"
        }
      }
    }
  },
  "404": {
    "description": "Not Found"
  },
  "500": {
    "description": "Server Error"
  }
}

Authentication

{
  "security": [
    {
      "roblox-legacy-cookie": []
    },
    {
      "roblox-api-key": []
    },
    {
      "roblox-oauth2": [
        "universe.thumbnail:write"
      ]
    }
  ],
  "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": [
    "Thumbnail Personalization"
  ],
  "summary": "Replaces the homepage thumbnails in an active personalization configuration without changing its identifier\r\nor existing statistics.",
  "operationId": "ThumbnailPersonalizationApi.HomepageThumbnail_UpdateThumbnailPersonalization",
  "parameters": [
    {
      "name": "universeId",
      "in": "path",
      "description": "The identifier of the universe that owns the configuration.",
      "required": true,
      "schema": {
        "type": "integer",
        "format": "int64"
      }
    }
  ],
  "requestBody": {
    "description": "The configuration and homepage thumbnails to update.",
    "content": {
      "application/json-patch+json": {
        "schema": {
          "allOf": [
            {
              "$ref": "#/components/schemas/UpdateThumbnailPersonalizationRequest"
            }
          ],
          "description": "The request to update a thumbnail personalization configuration."
        }
      },
      "application/json": {
        "schema": {
          "allOf": [
            {
              "$ref": "#/components/schemas/UpdateThumbnailPersonalizationRequest"
            }
          ],
          "description": "The request to update a thumbnail personalization configuration."
        }
      },
      "text/json": {
        "schema": {
          "allOf": [
            {
              "$ref": "#/components/schemas/UpdateThumbnailPersonalizationRequest"
            }
          ],
          "description": "The request to update a thumbnail personalization configuration."
        }
      },
      "application/*+json": {
        "schema": {
          "allOf": [
            {
              "$ref": "#/components/schemas/UpdateThumbnailPersonalizationRequest"
            }
          ],
          "description": "The request to update a thumbnail personalization configuration."
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "description": "Success",
      "content": {
        "application/json": {
          "schema": {
            "type": "string"
          }
        }
      }
    },
    "400": {
      "description": "Bad Request",
      "content": {
        "application/json": {
          "schema": {
            "type": "string"
          }
        }
      }
    },
    "401": {
      "description": "Unauthorized",
      "content": {
        "application/json": {
          "schema": {
            "type": "string"
          }
        }
      }
    },
    "403": {
      "description": "Forbidden",
      "content": {
        "application/json": {
          "schema": {
            "type": "string"
          }
        }
      }
    },
    "404": {
      "description": "Not Found"
    },
    "500": {
      "description": "Server Error"
    }
  },
  "x-roblox-stability": "EXPERIMENTAL",
  "x-roblox-rate-limits": {
    "perApiKeyOwner": {
      "period": "MINUTE",
      "maxInPeriod": 50
    },
    "perOauth2Authorization": {
      "period": "MINUTE",
      "maxInPeriod": 50
    }
  },
  "x-roblox-scopes": [
    {
      "name": "universe.thumbnail:write",
      "targetResourceSpecifier": "universes",
      "firstPartyOAuthOnly": true
    }
  ],
  "x-roblox-engine-usability": {
    "apiKeyWithHttpService": false
  },
  "security": [
    {
      "roblox-legacy-cookie": []
    },
    {
      "roblox-api-key": []
    },
    {
      "roblox-oauth2": [
        "universe.thumbnail:write"
      ]
    }
  ],
  "externalDocs": {
    "url": "https://create.roblox.com/docs/cloud/reference/features/thumbnail-personalization#ThumbnailPersonalizationApi.HomepageThumbnail_UpdateThumbnailPersonalization"
  }
}