Skip to content

Localization Tables v1

Reference for the Localization Tables v1 endpoints on Roblox.

Base URL: https://localizationtables.roblox.com

Method Path Name
POST /v1/auto-localization-table/games/:gameId/assets-generation-request postAutoLocalizationTableGamesGameidAssetsGenerationRequest
POST /v1/auto-localization-table/games/:gameId/auto-scrape-cleanup-request postAutoLocalizationTableGamesGameidAutoScrapeCleanupRequest
PATCH /v1/auto-localization-table/games/:gameId/ingestion patchAutoLocalizationTableGamesGameidIngestion
POST /v1/autolocalization/games/:gameId/autolocalizationtable postAutolocalizationGamesGameidAutolocalizationtable
PATCH /v1/autolocalization/games/:gameId/autolocalizationtable patchAutolocalizationGamesGameidAutolocalizationtable
PATCH /v1/autolocalization/games/:gameId/settings patchAutolocalizationGamesGameidSettings
GET /v1/autolocalization/metadata getAutolocalizationMetadata
GET /v1/localization-table/limits getLocalizationTableLimits
GET /v1/localization-table/metadata getLocalizationTableMetadata
POST /v1/localization-table/tables postLocalizationTableTables
GET /v1/localization-table/tables/:assetId getLocalizationTableTablesAssetid
GET /v1/localization-table/tables/:tableId getLocalizationTableTablesTableid
PATCH /v1/localization-table/tables/:tableId patchLocalizationTableTablesTableid
GET /v1/localization-table/tables/:tableId/asset-entries getLocalizationTableTablesTableidAssetEntries
GET /v1/localization-table/tables/:tableId/entries getLocalizationTableTablesTableidEntries
POST /v1/localization-table/tables/:tableId/entries/translation-feedback postLocalizationTableTablesTableidEntriesTranslationFeedback
POST /v1/localization-table/tables/:tableId/entries/translation-history postLocalizationTableTablesTableidEntriesTranslationHistory
GET /v1/localization-table/tables/:tableId/entry-count getLocalizationTableTablesTableidEntryCount

postAutoLocalizationTableGamesGameidAssetsGenerationRequest

Section titled “postAutoLocalizationTableGamesGameidAssetsGenerationRequest”

POST /v1/auto-localization-table/games/:gameId/assets-generation-request

Generates localization asset of a game.

Usage
import { fetchApi } from 'rozod';
import { postAutoLocalizationTableGamesGameidAssetsGenerationRequest } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(postAutoLocalizationTableGamesGameidAssetsGenerationRequest, {
gameId: /* integer */
});
Name Type Required Description
gameId integer Yes The game id.

Type: unknown

Status Description
400 3: Invalid table id.
14: Invalid game id
29: You do not have permission to generate asset for this table.
32: LocalizationTable is not available for the game.
34: Actor provided is invalid
401 0: Authorization has been denied for this request.
403 0: Token Validation Failed
429 24: Too many attempts.Please try again later.

postAutoLocalizationTableGamesGameidAutoScrapeCleanupRequest

Section titled “postAutoLocalizationTableGamesGameidAutoScrapeCleanupRequest”

POST /v1/auto-localization-table/games/:gameId/auto-scrape-cleanup-request

Enqueues an event to flush the auto scraped entries which doesn’t have translations.

Usage
import { fetchApi } from 'rozod';
import { postAutoLocalizationTableGamesGameidAutoScrapeCleanupRequest } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(postAutoLocalizationTableGamesGameidAutoScrapeCleanupRequest, {
gameId: /* integer */,
body: { /* ... */ }
});
Name Type Required Description
gameId integer Yes The id of the game.
Field Type Description
maxAgeForFlush string

Type: unknown

Status Description
400 14: Invalid game id
31: You do not have permission to flush auto scraped entries asset for this game.
32: LocalizationTable is not available for the game.
34: Actor provided is invalid
401 0: Authorization has been denied for this request.
403 0: Token Validation Failed
429 33: Too many attempts to flush the game.Please try again later.

patchAutoLocalizationTableGamesGameidIngestion

Section titled “patchAutoLocalizationTableGamesGameidIngestion”

PATCH /v1/auto-localization-table/games/:gameId/ingestion

Ingests entries for auto localization. Needs to be an authorized user.

Usage
import { fetchApi } from 'rozod';
import { patchAutoLocalizationTableGamesGameidIngestion } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(patchAutoLocalizationTableGamesGameidIngestion, {
gameId: /* integer */,
body: { /* ... */ }
});
Name Type Required Description
gameId integer Yes The game id.
Field Type Description
entries object[] See below
metadata object See below

entries[] item fields:

Field Type Description
context string
source string
screenshot string
meta object See below

meta fields:

Field Type Description
text string
userId number
osPlatform string
sessionId string
matchedEntry object See below

matchedEntry fields:

Field Type Description
source string
matchedParamIndex number

metadata fields:

Field Type Description
placeInformation object See below

placeInformation fields:

Field Type Description
placeId number
placeVersionNumber number

Type: unknown

Status Description
400 10: Maximum entries exceeded. Please keep the number of entries per request below the maximum.
13: Request body can't be null
16: Entries can't be null or empty
34: Actor provided is invalid
401 0: Authorization has been denied for this request.
403 0: Token Validation Failed
503 17: Feature is disabled

postAutolocalizationGamesGameidAutolocalizationtable

Section titled “postAutolocalizationGamesGameidAutolocalizationtable”

POST /v1/autolocalization/games/:gameId/autolocalizationtable

Usage
import { fetchApi } from 'rozod';
import { postAutolocalizationGamesGameidAutolocalizationtable } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(postAutolocalizationGamesGameidAutolocalizationtable, {
gameId: /* integer */
});
Name Type Required Description
gameId integer Yes
Field Type Description
isAutolocalizationEnabled boolean
isAutomaticEntriesSettingEnabled boolean
isAutomaticEntriesDeletionEnabled boolean
shouldUseLocalizationTable boolean
autoLocalizationTableId string
sourceLanguage string
assetId number
shouldUseImageLocalizationTable boolean
isAutoLocalizationForImageEnabled boolean
Status Description
401 0: Authorization has been denied for this request.
403 0: Token Validation Failed

patchAutolocalizationGamesGameidAutolocalizationtable

Section titled “patchAutolocalizationGamesGameidAutolocalizationtable”

PATCH /v1/autolocalization/games/:gameId/autolocalizationtable

Usage
import { fetchApi } from 'rozod';
import { patchAutolocalizationGamesGameidAutolocalizationtable } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(patchAutolocalizationGamesGameidAutolocalizationtable, {
gameId: /* integer */,
body: { /* ... */ }
});
Name Type Required Description
gameId integer Yes
Field Type Description
tableId string

Type: unknown

Status Description
401 0: Authorization has been denied for this request.
403 0: Token Validation Failed

PATCH /v1/autolocalization/games/:gameId/settings

Sets a game’s auto-localization related settings

Usage
import { fetchApi } from 'rozod';
import { patchAutolocalizationGamesGameidSettings } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(patchAutolocalizationGamesGameidSettings, {
gameId: /* integer */,
body: { /* ... */ }
});
Name Type Required Description
gameId integer Yes The id of the game.
Field Type Description
isAutolocalizationEnabled boolean
isAutomaticEntriesSettingEnabled boolean
isAutomaticEntriesDeletionsEnabled boolean
shouldUseLocalizationTable boolean
shouldUseImageLocalizationTable boolean
isAutoLocalizationForImageEnabled boolean

Type: unknown

Status Description
400 14: Invalid game id
61: IsAutomaticEntriesSettingEnabled can only be enabled if IsAutolocalizationEnabled is also enabled.
401 0: Authorization has been denied for this request.
403 0: Token Validation Failed
18: You do not have permission to manage this game
503 17: Feature is disabled

GET /v1/autolocalization/metadata

Metadata for AutoLocalization Configuration

Usage
import { fetchApi } from 'rozod';
import { getAutolocalizationMetadata } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(getAutolocalizationMetadata, undefined);
Field Type Description
isReactVersionEnabledForAutoLocalizationSettings boolean
isTabbedUIEnabledForConfigureLocalizationPage boolean
isAutomaticTranslationToggleUIEnabled boolean
isAutomaticTranslationQuotaUIEnabled boolean
Status Description
401 0: Authorization has been denied for this request.

GET /v1/localization-table/limits

Get limits for translation table entries operations

Usage
import { fetchApi } from 'rozod';
import { getLocalizationTableLimits } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(getLocalizationTableLimits, undefined);
Field Type Description
entryOperationLimits object See below
tableOperationLimits object See below

entryOperationLimits fields:

Field Type Description
maxContextLength number
maxKeyLength number
maxSourceLength number
maxExampleLength number
maxGameLocationPathLength number

tableOperationLimits fields:

Field Type Description
maxEntriesPerUpdate number
Status Description
401 0: Authorization has been denied for this request.

GET /v1/localization-table/metadata

Get metadata for localization UI

Usage
import { fetchApi } from 'rozod';
import { getLocalizationTableMetadata } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(getLocalizationTableMetadata, undefined);
Field Type Description
isBulkUploadFeatureEnabled boolean
isCsvDownloadEnabled boolean
isAccessToTranslationMetaDataEnabled boolean
isTranslationManagementRedirectionEnabled boolean
isUntranslatedFilterEnabled boolean
isAutomaticTranslationFilterEnabled boolean

POST /v1/localization-table/tables

Creates a Localization Table with the given data.

Usage
import { fetchApi } from 'rozod';
import { postLocalizationTableTables } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(postLocalizationTableTables, {
body: { /* ... */ }
});
Field Type Description
name string
ownerType `“User” “Group”`
ownerId number
Field Type Description
id string
assetId number
Status Description
401 0: Authorization has been denied for this request.
403 0: Token Validation Failed
2: You do not have permission to get this table.

GET /v1/localization-table/tables/:assetId

Get table information by the assetId of the table.

Usage
import { fetchApi } from 'rozod';
import { getLocalizationTableTablesAssetid } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(getLocalizationTableTablesAssetid, {
assetId: /* integer */
});
Name Type Required Description
assetId integer Yes The asset id associated with the table.
Field Type Description
id string
name string
ownerType `“User” “Group”`
ownerId number
assetId number
Status Description
400 12: Invalid asset id.
401 0: Authorization has been denied for this request.
403 2: You do not have permission to get this table.

GET /v1/localization-table/tables/:tableId

Get table information by the id of the table.

Usage
import { fetchApi } from 'rozod';
import { getLocalizationTableTablesTableid } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(getLocalizationTableTablesTableid, {
tableId: /* string */
});
Name Type Required Description
tableId string Yes
Field Type Description
id string
name string
ownerType `“User” “Group”`
ownerId number
assetId number
Status Description
400 3: Invalid table id.
401 0: Authorization has been denied for this request.
403 2: You do not have permission to get this table.

PATCH /v1/localization-table/tables/:tableId

Updates the tables contents based on what is provided.

Usage
import { fetchApi } from 'rozod';
import { patchLocalizationTableTablesTableid } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(patchLocalizationTableTablesTableid, {
tableId: /* string */,
gameId: /* integer? */,
body: { /* ... */ }
});
Name Type Required Description
tableId string Yes The table guid for the table to update.
gameId integer? No The game id.
Field Type Description
name string
entries object[] See below

entries[] item fields:

Field Type Description
identifier object See below
metadata object See below
translations object[] See below
delete boolean

identifier fields:

Field Type Description
key string
context string
source string
entryFormat `“Invalid” “Legacy”

metadata fields:

Field Type Description
example string
gameLocations object[] See below
entryFormat `“Invalid” “Legacy”

gameLocations[] item fields:

Field Type Description
path string

translations[] item fields:

Field Type Description
locale string
translationText string
delete boolean
changeAgent object See below
updatedTime string

changeAgent fields:

Field Type Description
ChangeAgentType `“Invalid” “User”
Id string
OptionalIdCase `“None” “Id”`
Field Type Description
failedEntriesAndTranslations object[] See below
modifiedEntriesAndTranslations object[] See below

failedEntriesAndTranslations[] item fields:

Field Type Description
error object See below
identifier object See below
metadata object See below
translations object[] See below
createdTime string

error fields:

Field Type Description
errorCode number
errorMessage string

identifier fields:

Field Type Description
key string
context string
source string
entryFormat `“Invalid” “Legacy”

metadata fields:

Field Type Description
example string
gameLocations object[] See below
entryFormat `“Invalid” “Legacy”

gameLocations[] item fields:

Field Type Description
path string

translations[] item fields:

Field Type Description
locale string
translationText string
translator object See below
updatedTime string
feedbackCount number

translator fields:

Field Type Description
id number
agentType `“User” “Automation”`

modifiedEntriesAndTranslations[] item fields:

Field Type Description
identifier object See below
translations object[] See below

identifier fields:

Field Type Description
key string
context string
source string
entryFormat `“Invalid” “Legacy”

translations[] item fields:

Field Type Description
locale string
translationText string
translator object See below
updatedTime string
feedbackCount number

translator fields:

Field Type Description
id number
agentType `“User” “Automation”`
Status Description
400 3: Invalid table id.
4: Table does not exist.
10: Maximum entries exceeded. Please keep the number of entries per request below the maximum.
13: Request body can't be null
14: Invalid game id
401 0: Authorization has been denied for this request.
403 0: Token Validation Failed
6: You do not have permission to create this table.
503 17: Feature is disabled

getLocalizationTableTablesTableidAssetEntries

Section titled “getLocalizationTableTablesTableidAssetEntries”

GET /v1/localization-table/tables/:tableId/asset-entries

Gets a page of asset (image) entries for the specified table, along with the table’s

Usage
import { fetchApi } from 'rozod';
import { getLocalizationTableTablesTableidAssetEntries } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(getLocalizationTableTablesTableidAssetEntries, {
tableId: /* string */,
cursor: /* string? */,
gameId: /* integer? */
});
Name Type Required Description
tableId string Yes The table id.
cursor string? No The source asset id to start after. If null, starts from the first page. A null cursor in the response means there are no more entries.
gameId integer? No The universe id that owns the table.
Field Type Description
previousPageCursor string
nextPageCursor string
data object[] See below

data[] item fields:

Field Type Description
sourceAssetId number
assetType number
assetClass number
assetProp number
translations object[] See below
creator object See below
gameLocations object[] See below
createdTime string

translations[] item fields:

Field Type Description
locale string
translationText string
translator object See below
updatedTime string
feedbackCount number

translator fields:

Field Type Description
id number
agentType `“User” “Automation”`

creator fields:

Field Type Description
id number
agentType `“User” “Automation”`

gameLocations[] item fields:

Field Type Description
path string
Status Description
400 3: Invalid table id.
14: Invalid game id
25: Invalid cursor
401 0: Authorization has been denied for this request.
403 2: You do not have permission to get this table.

GET /v1/localization-table/tables/:tableId/entries

Gets a batch of entries for a table.

Usage
import { fetchApi } from 'rozod';
import { getLocalizationTableTablesTableidEntries } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(getLocalizationTableTablesTableidEntries, {
tableId: /* string */,
cursor: /* string? */,
gameId: /* integer? */,
entryFormat: /* enum */
});
Name Type Required Description
tableId string Yes
cursor string? No If null, there are no more entries in the table and you’ve reached the last page.
gameId integer? No
entryFormat enum Yes
Field Type Description
previousPageCursor string
nextPageCursor string
data object[] See below

data[] item fields:

Field Type Description
identifier object See below
metadata object See below
translations object[] See below
createdTime string

identifier fields:

Field Type Description
key string
context string
source string
entryFormat `“Invalid” “Legacy”

metadata fields:

Field Type Description
example string
gameLocations object[] See below
entryFormat `“Invalid” “Legacy”

gameLocations[] item fields:

Field Type Description
path string

translations[] item fields:

Field Type Description
locale string
translationText string
translator object See below
updatedTime string
feedbackCount number

translator fields:

Field Type Description
id number
agentType `“User” “Automation”`
Status Description
400 3: Invalid table id.
14: Invalid game id
401 0: Authorization has been denied for this request.
403 2: You do not have permission to get this table.

postLocalizationTableTablesTableidEntriesTranslationFeedback

Section titled “postLocalizationTableTablesTableidEntriesTranslationFeedback”

POST /v1/localization-table/tables/:tableId/entries/translation-feedback

Gets the translation feedback for each entry passed in.

Usage
import { fetchApi } from 'rozod';
import { postLocalizationTableTablesTableidEntriesTranslationFeedback } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(postLocalizationTableTablesTableidEntriesTranslationFeedback, {
tableId: /* string */,
gameId: /* integer? */,
body: { /* ... */ }
});
Name Type Required Description
tableId string Yes The entries’ tableId.
gameId integer? No The game id.
Field Type Description
sourceLocale string
entries object[] See below

entries[] item fields:

Field Type Description
translation object See below
key string
context string
source string
entryFormat `“Invalid” “Legacy”

translation fields:

Field Type Description
locale string
translationText string
translator object See below
updatedTime string
feedbackCount number

translator fields:

Field Type Description
id number
agentType `“User” “Automation”`
Field Type Description
tableId string
entries object[] See below

entries[] item fields:

Field Type Description
identifier object See below
feedbackCount number
playerSuggestionText string[]
reasons `“None” “Untranslated”
robloxSuggestionText string

identifier fields:

Field Type Description
translation object See below
key string
context string
source string
entryFormat `“Invalid” “Legacy”

translation fields:

Field Type Description
locale string
translationText string
translator object See below
updatedTime string
feedbackCount number

translator fields:

Field Type Description
id object
agentType object
Status Description
400 3: Invalid table id.
13: Request body can't be null
14: Invalid game id
16: Entries can't be null or empty
35: The entries provided are invalid
37: Invalid locale code.
38: Invalid entry identifier.
401 0: Authorization has been denied for this request.
403 0: Token Validation Failed
2: You do not have permission to get this table.
429 24: Too many attempts.Please try again later.
503 17: Feature is disabled

postLocalizationTableTablesTableidEntriesTranslationHistory

Section titled “postLocalizationTableTablesTableidEntriesTranslationHistory”

POST /v1/localization-table/tables/:tableId/entries/translation-history

Gets the translation history for each entry passed in.

Usage
import { fetchApi } from 'rozod';
import { postLocalizationTableTablesTableidEntriesTranslationHistory } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(postLocalizationTableTablesTableidEntriesTranslationHistory, {
tableId: /* string */,
gameId: /* integer? */,
body: { /* ... */ }
});
Name Type Required Description
tableId string Yes The entries’ tableId.
gameId integer? No The game id.
Field Type Description
locale string
entries object[] See below
sourceType `“Invalid” “Text”

entries[] item fields:

Field Type Description
cursor string
identifier object See below
count number
sortOrder `“Asc” “Desc”`

identifier fields:

Field Type Description
key string
context string
source string
entryFormat `“Invalid” “Legacy”
Field Type Description
tableId string
locale string
entries object[] See below
failedEntries object[] See below

entries[] item fields:

Field Type Description
identifier object See below
history object[] See below
nextCursor string

identifier fields:

Field Type Description
key string
context string
source string
entryFormat `“Invalid” “Legacy”

history[] item fields:

Field Type Description
translationText string
translator object See below
created string

translator fields:

Field Type Description
id number
agentType `“User” “Automation”`

failedEntries[] item fields:

Field Type Description
identifier object See below
count number
error object See below

identifier fields:

Field Type Description
key string
context string
source string
entryFormat `“Invalid” “Legacy”

error fields:

Field Type Description
errorCode number
errorMessage string
Status Description
400 3: Invalid table id.
13: Request body can't be null
14: Invalid game id
16: Entries can't be null or empty
35: The entries provided are invalid
37: Invalid locale code.
38: Invalid entry identifier.
39: Count should be at least 1.
45: Invalid exclusive start id.
401 0: Authorization has been denied for this request.
403 0: Token Validation Failed
2: You do not have permission to get this table.
429 24: Too many attempts.Please try again later.
503 17: Feature is disabled

getLocalizationTableTablesTableidEntryCount

Section titled “getLocalizationTableTablesTableidEntryCount”

GET /v1/localization-table/tables/:tableId/entry-count

Gets the number of entries in the specified table

Usage
import { fetchApi } from 'rozod';
import { getLocalizationTableTablesTableidEntryCount } from 'rozod/endpoints/localizationtablesv1';
const data = await fetchApi(getLocalizationTableTablesTableidEntryCount, {
tableId: /* string */,
gameId: /* integer? */,
entryFormat: /* enum */
});
Name Type Required Description
tableId string Yes The table id
gameId integer? No The game id
entryFormat enum Yes
Field Type Description
id string
entryCount number
Status Description
400 3: Invalid table id.
14: Invalid game id
401 0: Authorization has been denied for this request.
403 2: You do not have permission to get this table.