Source: Roblox Creator Hub · CC BY 4.0 · View source · Code samples: MIT Imported 2026-10-03. Formatting adapted for this site.
GET /thumbnail-personalization-api/v1/universes/{universeId}/personalization — openapi
Gets a page of thumbnail personalization configurations for a universe.
Endpoint
Method: GET
Path: /thumbnail-personalization-api/v1/universes/{universeId}/personalization
Servers:
https://apis.roblox.com
Parameters
| Name | Location | Required | Description |
|---|---|---|---|
| universeId | path | true | The identifier of the universe whose configurations are returned. |
| status | query | true | The configuration status to return. |
| limit | query | false | The maximum number of configurations to return. |
| cursor | query | false | The cursor from a previous response, if any. |
[
{
"name": "universeId",
"in": "path",
"description": "The identifier of the universe whose configurations are returned.",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "status",
"in": "query",
"description": "The configuration status to return.",
"required": true,
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/PersonalizedConfigStatus"
}
],
"description": "The lifecycle status of a thumbnail personalization configuration."
}
},
{
"name": "limit",
"in": "query",
"description": "The maximum number of configurations to return.",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "cursor",
"in": "query",
"description": "The cursor from a previous response, if any.",
"schema": {
"type": "string"
}
}
] Responses
| Status | Description |
|---|---|
| 200 | Success |
| 400 | Bad Request |
| 401 | Unauthorized |
| 403 | Forbidden |
| 500 | Server Error |
{
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FindPersonalizedConfigsResponse"
}
}
}
},
"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"
}
}
}
},
"500": {
"description": "Server Error"
}
} Authentication
{
"security": [
{
"roblox-legacy-cookie": []
},
{
"roblox-api-key": []
},
{
"roblox-oauth2": [
"universe.thumbnail:read"
]
}
],
"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": {}
}
}
}
}
} Related Schemas
Complete Operation Definition
{
"tags": [
"Thumbnail Personalization"
],
"summary": "Gets a page of thumbnail personalization configurations for a universe.",
"operationId": "ThumbnailPersonalizationApi.HomepageThumbnail_FindThumbnailPersonalizations",
"parameters": [
{
"name": "universeId",
"in": "path",
"description": "The identifier of the universe whose configurations are returned.",
"required": true,
"schema": {
"type": "integer",
"format": "int64"
}
},
{
"name": "status",
"in": "query",
"description": "The configuration status to return.",
"required": true,
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/PersonalizedConfigStatus"
}
],
"description": "The lifecycle status of a thumbnail personalization configuration."
}
},
{
"name": "limit",
"in": "query",
"description": "The maximum number of configurations to return.",
"schema": {
"type": "integer",
"format": "int32"
}
},
{
"name": "cursor",
"in": "query",
"description": "The cursor from a previous response, if any.",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FindPersonalizedConfigsResponse"
}
}
}
},
"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"
}
}
}
},
"500": {
"description": "Server Error"
}
},
"x-roblox-stability": "EXPERIMENTAL",
"x-roblox-rate-limits": {
"perApiKeyOwner": {
"period": "MINUTE",
"maxInPeriod": 100
},
"perOauth2Authorization": {
"period": "MINUTE",
"maxInPeriod": 100
}
},
"x-roblox-scopes": [
{
"name": "universe.thumbnail:read",
"targetResourceSpecifier": "universes",
"firstPartyOAuthOnly": true
}
],
"x-roblox-engine-usability": {
"apiKeyWithHttpService": false
},
"security": [
{
"roblox-legacy-cookie": []
},
{
"roblox-api-key": []
},
{
"roblox-oauth2": [
"universe.thumbnail:read"
]
}
],
"externalDocs": {
"url": "https://create.roblox.com/docs/cloud/reference/features/thumbnail-personalization#ThumbnailPersonalizationApi.HomepageThumbnail_FindThumbnailPersonalizations"
}
}