Skip to main content

UserIntegrationDto

A user integration (credentials are never exposed)

connectedbooleanrequired

Whether the integration is connected (has credentials)

Example: true
createdAtstring<date-time>required

When the integration was connected

displayNamestring | nullnullable

User-defined display name

Example: My AniList Account
enabledbooleanrequired

Whether the integration is enabled

Example: true
externalUserIdstring | nullnullable

External user ID from the provider

Example: 123456
externalUsernamestring | nullnullable

External username from the provider

Example: myusername
idstring<uuid>required

Integration ID

Example: 550e8400-e29b-41d4-a716-446655440000
integrationNamestringrequired

Integration name (e.g., "anilist", "myanimelist")

Example: anilist
lastErrorstring | nullnullable

Error message if sync failed

lastSyncAtstring,null<date-time>nullable

When the integration last synced

Example: 2024-01-15T18:00:00Z
settingsrequired

User preferences for this integration

syncStatusstringrequired

Current sync status: idle, syncing, error, rate_limited

Example: idle
tokenExpiresAtstring,null<date-time>nullable

When the OAuth token expires

updatedAtstring<date-time>required

When the integration was last updated

UserIntegrationDto
{
"connected": true,
"createdAt": "2024-07-29T15:51:28.071Z",
"displayName": "My AniList Account",
"enabled": true,
"externalUserId": "123456",
"externalUsername": "myusername",
"id": "550e8400-e29b-41d4-a716-446655440000",
"integrationName": "anilist",
"lastError": "string",
"lastSyncAt": "2024-01-15T18:00:00Z",
"syncStatus": "idle",
"tokenExpiresAt": "2024-07-29T15:51:28.071Z",
"updatedAt": "2024-07-29T15:51:28.071Z"
}