Is there any way to attach a file or an image in Microsoft teams message?
According to the Teams API documentation,
Send a message with a file attachment in it
The file to attach must already be in SharePoint. To access the file properties, GET the driveItem for the file. The eTag of the driveItem has a GUID that is your attachment ID. The webDavUrl of the driveItem is your attachment contentURL. You can use the name of the driveItem as your attachment name. You can use /drives/{drive-id}/items/{item-id} to get a drive item resource. To get webDavUrl, you have to explicitly select it via $select=webDavUrl or $select=*,webDavUrl.
Microsoft Graph supports the OpenUrl card action. Bots are required for other card actions.
For more information, see Send chatMessage in a channel or a chat - Microsoft Graph beta | Microsoft Learn
If the external service has a Developer API Reference/Documentation then you should be able to integrate the endpoints in Make using the app’s universal module (Make an API call) or generic HTTP “Make a request” module.
You can also submit this suggestion to the Idea exchange, under App improvement ideas.
Don’t forget to search for it first, just in case someone already suggested it, so that you don’t end up creating a duplicate.
If you need assistance in setting up the app’s universal module, or the generic HTTP module, please provide additional information about what you have tried with regards to the external service’s Developer API Reference – how you are setting the connection up, a link to the endpoint are you trying to connect to, and what errors you are encountering.