Skip to content

Instant Messaging API

The Instant Messaging API provides access to data from messaging platforms like Telegram and Discord, including chat messages, user profiles, channel information, and server details.

GET/api/v2/im/search

Search through the IM messages database using various filters.

NameTypeRequiredDescription
qstringNoSearch query string
gtestringNoDate filter (≥). Formats: Unix timestamp, YYYY-MM-DD, or YYYY-MM-DDThh:mm:ss
ltestringNoDate filter (≤). Formats: Unix timestamp, YYYY-MM-DD, or YYYY-MM-DDThh:mm:ss
pageintegerNoPage number for pagination
page_sizeintegerNoResults per page (default: 10)
platformstringNoFilter by messaging platform
usernamestringNoFilter by username
Terminal window
curl "https://api.vysion.ai/api/v2/im/search?q=malware" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 1,
"hits": [
{
"userId": "1234567891011121314",
"username": null,
"channelId": "1234567891011121314",
"messageId": "1234567891011121314_1234567891011121314",
"message": "Message hit",
"channelTitle": "txt",
"languages": [
{
"language": "en",
"probability": 0.857141655897461
},
{
"language": "so",
"probability": 0.14285741760106124
}
],
"sha1sum": null,
"sha256sum": null,
"media": null,
"detectionDate": "2025-01-01T00:00:00.000000",
"serverId": "1234567891011121314",
"serverTitle": "Discord server",
"platform": "discord"
}
]
},
"error": null
}
GET/api/v2/im/{platform}/chat/{channelId}

Get messages from a group given a channel ID. Supports both Telegram channels and Discord channels.

NameTypeRequiredDescription
platformstringYesPlatform name (Telegram or Discord)
channelIdstringYesChannel identifier
gtestringNoStart date (Unix timestamp, YYYY-MM-DD, or YYYY-MM-DDThh:mm:ss)
ltestringNoEnd date (Unix timestamp, YYYY-MM-DD, or YYYY-MM-DDThh:mm:ss)
Terminal window
curl "https://api.vysion.ai/api/v2/im/Telegram/chat/-1002018436281" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 25,
"hits": [
{
"userId": 1595126601,
"username": "user123",
"channelId": -1002018436281,
"messageId": "-1002018436281_85",
"message": "Hello everyone!",
"channelTitle": "Crypto News",
"languages": [
{
"language": "en",
"probability": 0.98
}
],
"sha1sum": "a1b2c3d4e5f6...",
"sha256sum": "1a2b3c4d5e6f...",
"media": null,
"detectionDate": "2024-05-16T15:30:22Z"
}
]
},
"error": null
}
GET/api/v2/im/{platform}/profile/{userId}

Get information from a user on the specified platform.

NameTypeRequiredDescription
platformstringYesPlatform name (Telegram or Discord)
userIdstringYesUser identifier
Terminal window
curl "https://api.vysion.ai/api/v2/im/Telegram/profile/1595126601" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 1,
"hits": [
{
"userId": 1595126601,
"usernames": ["user123", "oldusername"],
"firstName": ["John"],
"lastName": ["Doe"],
"detectionDate": "2024-05-16T15:30:22Z",
"profilePhoto": ["https://example.com/photo.jpg"]
}
]
},
"error": null
}
GET/api/v2/im/{platform}/message/{messageId}

Get detailed information of a specific message.

NameTypeRequiredDescription
platformstringYesPlatform name (Telegram or Discord)
messageIdstringYesMessage identifier
Terminal window
curl "https://api.vysion.ai/api/v2/im/Telegram/message/-1012018336281_85" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 1,
"hits": [
{
"userId": 1595126601,
"username": "user123",
"channelId": -1002018436281,
"messageId": "-1012018336281_85",
"message": "Check out this crypto wallet: bc1q...",
"channelTitle": "Crypto Discussion",
"languages": [
{
"language": "en",
"probability": 0.95
}
],
"sha1sum": "a1b2c3d4e5f6...",
"sha256sum": "1a2b3c4d5e6f...",
"media": "image",
"detectionDate": "2024-05-16T15:30:22Z"
}
]
},
"error": null
}
GET/api/v2/im/{platform}/channel/{channelId}

Get detailed information of a specific channel (Telegram) or channel (Discord).

NameTypeRequiredDescription
platformstringYesPlatform name (Telegram or Discord)
channelIdstringYesChannel identifier
Terminal window
curl "https://api.vysion.ai/api/v2/im/Telegram/channel/-1012018336281" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 1,
"hits": [
{
"channelId": -1012018336281,
"channelTitles": ["Crypto News", "Crypto Updates"],
"detectionDate": "2024-05-16T15:30:22Z",
"creationDate": "2023-01-15T10:00:00Z",
"channelPhoto": ["https://example.com/channel_photo.jpg"]
}
]
},
"error": null
}
GET/api/v2/im/{platform}/server/{serverId}

Get detailed information of a specific Discord server.

NameTypeRequiredDescription
platformstringYesPlatform name (typically discord)
serverIdstringYesServer identifier
Terminal window
curl "https://api.vysion.ai/api/v2/im/discord/server/1031841869195395175" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 1,
"hits": [
{
"serverId": 1031841869195395175,
"serverTitles": ["Gaming Community", "Game Hub"],
"detectionDate": "2024-05-16T15:30:22Z",
"creationDate": "2023-03-10T14:20:00Z",
"serverPhoto": ["https://example.com/server_icon.jpg"]
}
]
},
"error": null
}
GET/api/v2/im/email/{email}

Get information about profiles that contain a specific email address found in instant messaging platforms.

NameTypeRequiredDescription
emailstringYesEmail address to search for
pageintegerNoPage number for pagination
page_sizeintegerNoNumber of results per page
gtestringNoStart date (Unix timestamp, YYYY-MM-DD, or YYYY-MM-DDThh:mm:ss)
ltestringNoEnd date (Unix timestamp, YYYY-MM-DD, or YYYY-MM-DDThh:mm:ss)
Terminal window
curl "https://api.vysion.ai/api/v2/im/email/help@coinbase.com" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 1,
"hits": [
{
"userId": 1595126601,
"usernames": ["support_user"],
"firstName": ["Support"],
"lastName": null,
"detectionDate": "2024-09-07T07:36:35.343648",
"profilePhoto": [],
"platform": "telegram",
"email": [
{
"value": "help@coinbase.com"
},
{
"value": "no-reply@coinbase.com"
}
],
"paste": [],
"skype": [],
"telegram": [
{
"value": "t.me/supportuser"
}
],
"whatsapp": [],
"bitcoin_address": [],
"polkadot_address": [],
"ethereum_address": [],
"monero_address": [],
"ripple_address": [],
"zcash_address": []
}
]
},
"error": null
}
GET/api/v2/im/wallet/{chain}/{address}

Get information about profiles that contain a specific cryptocurrency wallet address found in instant messaging platforms.

NameTypeRequiredDescription
chainstringYesBlockchain name (e.g., BTC, ETH, XMR)
addressstringYesWallet address to search for
pageintegerNoPage number for pagination
page_sizeintegerNoNumber of results per page
gtestringNoStart date (Unix timestamp, YYYY-MM-DD, or YYYY-MM-DDThh:mm:ss)
ltestringNoEnd date (Unix timestamp, YYYY-MM-DD, or YYYY-MM-DDThh:mm:ss)
Terminal window
curl "https://api.vysion.ai/api/v2/im/wallet/BTC/bc1q026rl6hjkdywnsrtva26mq2w0avs9k850ew2d6" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 1,
"hits": [
{
"userId": 1595126601,
"usernames": ["crypto_trader"],
"firstName": ["Alex"],
"lastName": ["Smith"],
"detectionDate": "2024-09-07T07:36:35.343648",
"profilePhoto": [],
"platform": "telegram",
"email": [],
"paste": [],
"skype": [],
"telegram": [],
"whatsapp": [],
"bitcoin_address": [
{
"value": "bc1qpdq8q5wxtxkkdzjy83gc8e94lcke7pecur2f6w"
},
{
"value": "bc1q026rl6hjkdywnsrtva26mq2w0avs9k850ew2d6"
}
],
"polkadot_address": [],
"ethereum_address": [],
"monero_address": [],
"ripple_address": [],
"zcash_address": []
}
]
},
"error": null
}
FieldTypeDescription
userIdinteger/stringUser identifier
usernamestringUsername on the platform
channelIdinteger/stringChannel identifier
messageIdstringUnique message identifier
messagestringMessage content
channelTitlestringChannel or group name
languagesarrayDetected languages with confidence scores
sha1sumstringSHA1 hash of the message content
sha256sumstringSHA256 hash of the message content
mediastringMedia type if message contains media
detectionDatestringWhen the message was detected (ISO 8601)
serverIdstringDiscord server ID (Discord only)
serverTitlestringDiscord server title (Discord only)
platformstringPlatform name
FieldTypeDescription
userIdintegerUser identifier
usernamesarrayList of known usernames
firstNamearrayList of known first names
lastNamearrayList of known last names
detectionDatestringWhen the profile was detected (ISO 8601)
profilePhotoarrayList of profile photo URLs
platformstringPlatform name
emailarrayAssociated email addresses
telegramarrayAssociated Telegram handles
whatsapparrayAssociated WhatsApp numbers
bitcoin_addressarrayAssociated Bitcoin addresses
ethereum_addressarrayAssociated Ethereum addresses
monero_addressarrayAssociated Monero addresses
ripple_addressarrayAssociated Ripple addresses
zcash_addressarrayAssociated Zcash addresses
polkadot_addressarrayAssociated Polkadot addresses
FieldTypeDescription
channelId/serverIdintegerChannel or server identifier
channelTitles/serverTitlesarrayList of known titles/names
detectionDatestringWhen detected (ISO 8601)
creationDatestringWhen created (ISO 8601)
channelPhoto/serverPhotoarrayList of photo/icon URLs
PlatformDescriptionSupported Features
TelegramTelegram messaging platformChannels, groups, users, messages
DiscordDiscord chat platformServers, channels, users, messages

IM endpoints may return these error codes:

StatusError CodeDescription
401UnauthorizedInvalid or missing API key
404Not FoundResource not found
422Unprocessable EntityInvalid parameters
429Too Many RequestsRate limit exceeded
500Internal Server ErrorServer error