Skip to main content
A representation of role connection metadata for an application. When a guild has added a bot and that bot has configured its role_connections_verification_url (in the developer portal), the application will render as a potential verification method in the guild’s role verification configuration. If an application has configured role connection metadata, its metadata will appear in the role verification configuration when the application has been added as a verification method to the role. When a user connects their account using the bot’s role_connections_verification_url, the bot will update a user’s role connection with metadata using the OAuth2 role_connections.write scope.

Application Role Connection Metadata Object

Application Role Connection Metadata Structure
FieldTypeDescription
typeApplicationRoleConnectionMetadataTypetype of metadata value
keystringdictionary key for the metadata field (must be a-z, 0-9, or _ characters; 1-50 characters)
namestringname of the metadata field (1-100 characters)
name_localizations?dictionary with keys in available localestranslations of the name
descriptionstringdescription of the metadata field (1-200 characters)
description_localizations?dictionary with keys in available localestranslations of the description
Application Role Connection Metadata Type
TypeValueDescription
INTEGER_LESS_THAN_OR_EQUAL1the metadata value (integer) is less than or equal to the guild’s configured value (integer)
INTEGER_GREATER_THAN_OR_EQUAL2the metadata value (integer) is greater than or equal to the guild’s configured value (integer)
INTEGER_EQUAL3the metadata value (integer) is equal to the guild’s configured value (integer)
INTEGER_NOT_EQUAL4the metadata value (integer) is not equal to the guild’s configured value (integer)
DATETIME_LESS_THAN_OR_EQUAL5the metadata value (ISO8601 string) is less than or equal to the guild’s configured value (integer; days before current date)
DATETIME_GREATER_THAN_OR_EQUAL6the metadata value (ISO8601 string) is greater than or equal to the guild’s configured value (integer; days before current date)
BOOLEAN_EQUAL7the metadata value (integer) is equal to the guild’s configured value (integer; 1)
BOOLEAN_NOT_EQUAL8the metadata value (integer) is not equal to the guild’s configured value (integer; 1)
Each metadata type offers a comparison operation that allows guilds to configure role requirements based on metadata values stored by the bot. Bots specify a metadata value for each user and guilds specify the required guild's configured value within the guild role settings.

Get Application Role Connection Metadata Records

GET/applications/{application.id}/role-connections/metadata
Returns a list of application role connection metadata objects for the given application.

Update Application Role Connection Metadata Records

PUT/applications/{application.id}/role-connections/metadata
Updates and returns a list of application role connection metadata objects for the given application.
An application can have a maximum of 5 metadata records.