Fetching external files from URL with custom Microsoft Teams App - bots

Im currently making a custom app for Microsoft Teams, and im trying to get it to fetch files from a URL without One-drive and Sharepoint. I've been reading the documentation on bots and outgoing webhooks, but they seem to all utilize either one-drive or sharepoint. I want my custom app to fetch files from a URL and then upload them to the corresponding Team or Channel within MS Teams.
Any help greatly appreciated!

you can fetch the recent files using graph Api, could you please check this document to fetch the recent files.

Regarding Cards and sending notifications:
Using Adaptive Cards the source for the images or artwork for your notification can be anywhere that you have declared as a valid domain in your Teams Manifest - validDomains
Note that while ODB/SPO are the most common / natural locations for files in teams , there is nothing special about these locations or urls. (clearly you need access and authentication, but these are not special, just essential)
Sample fetching artwork from non-SPO locations: https://adaptivecards.io/samples/ImageGallery.html
Adaptive Cards in teams : https://learn.microsoft.com/en-us/microsoftteams/platform/task-modules-and-cards/cards/design-effective-cards?tabs=desktop

Related

In bot framework composer in Teams channel is there a way to determine file size of an uploaded file?

Bot framework composer in web channel gives you file sizes as an array in turn.activity.channelData.attachmentSizes (these don't always line up with the array order of the attachments but it's better than nothing).
However in Teams channel there's no attachment detail other than the url, some download url involving an id, and what the file says its extension is.
In response to this suggestion I tried https://<sharepointsite>/_api/web/getFileByServerRelativeUrl('/path/to/filename.ext')/Properties but it returned 403 Forbidden.
I'm wondering if Graph API is the only way (I'd rather not have to get users to agree to that) or if there's some rest api that can gather it for me?

Does SharePoint API offer an endpoint for doing a full text search on the content of the documents?

I am using SharePoint as a DMS for my app.
Via the SharePoint API I am uploading, and downloading files, and retrieving folders and files.
I have been using the standard url blueprint:
https://{{TenantName}}.sharepoint.com/sites/{{SiteName}}/_api/web/...
I need to add a full text search in the app. I need to be able to send a queryString parameter to the API, and to get returned all files that contain that string. Not in their name, but in their content.
Is that even possible? Could not find it online. Any help is greatly appreciated.
As far as I know, you can use the following REST API to search in SharePoint:
GET http://{server}/_api/search/query?querytext='sharepoint'
I suggest you can refer to this document: SharePoint Search REST API overview
Hope it can help you.

docusign unable to use attachment tabs by API

I'm using DocuSign's sandbox environment and also API Explorer.
I need some help to create envelopes by API for request attachments for signers. I've seen in this page it might not be enabled in some accounts. But I'm not sure if this is the case once I can request attachments by sending envelops from user's portal.
Also on API Explorer I'm not being able to include attachment tabs, as you can see in this print:
By API calls, I'm trying to include signerAttachmentTabs as I've seen on their documents.
No errors, it seem my signer_attachment_tabs are just ignored. Hope some one can help me to find out why it is not working by API calls.
Thanks,
Etore
SignerAttachementTabs are fully supported but are not yet included in the API Explorer. The next version of the Explorer will let you use them from the Explorer.
Accounts on the Demo/Sandbox platform enable you to include SignerAttachmentTabs.
Please use the documentation to try creating an Envelopes::Create call that includes a SignerAttachmentTab. If you have problems, ask another question here and include your code that is not working.

Office 365 Unified API Exchange folders

I'm starting to look at the new Office 365 Unified API (specifically around Exchange for the moment).
In the existing Mail API at you can make an authenticated call to https://outlook.office365.com/api/v1.0/me/folders/Inbox/messages in order to get messages in the Inbox. You can also hit folders/Drafts/messages, folders/SentItems/messages and folders/DeletedItems/messages to retrieve messages from Drafts, Sent Items and Deleted Items respectively. This is documented at https://msdn.microsoft.com/office/office365/APi/mail-rest-operations#AllMailAPIoperations.
Problem is, I can't find (either in documentation at https://msdn.microsoft.com/office/office365/HowTo/office-365-unified-api-reference#msg_ref_relationship_Messages or by messing about on https://graphexplorer2.azurewebsites.net) how to drill into these folders when accessing via the Office 365 Unified API.
The documented URL to access messages via the new Unified API is https://graph.microsoft.com/beta/me/Messages, and so I was hoping I could hit something like Messages/Inbox or Messages/folders/Inbox, but no luck so far.
Does anyone know if these paths are currently missing or addressed differently, or if it's the intention that you find what you want by using $search rather than drilling into specific folders?
This isn't currently supported in Unified API, but is high on our priority list, and we are working on it. Sorry for the confusion. You can continue to use outlook.office365.com endpoint for now, to access folder info.
Having checked back (and read through https://graph.microsoft.com/beta/$metadata) this has now been implemented. You access folders via MailFolders/[folder name]/messages, so:
https://graph.microsoft.com/beta/me/MailFolders/Inbox/messages
https://graph.microsoft.com/beta/me/MailFolders/Drafts/messages
https://graph.microsoft.com/beta/me/MailFolders/SentItems/messages
..etc.

Retrieving files from blog media entries

The tool I'm building needs pull data from IBM Connections Ideation Blogs. I therefore use the Connections API with basic authentication to read Blog Entries. This goes well until the description contains images. When I ask the API to provide media resources for the blog, it does not show any entries of the /BLOGS_UPLOADED_IMAGES location - the one containing images uploaded through the blog's richtext editor. The user I use in my API call is the same user who created blog entries and uploaded pictures.
However the API call DOES contain images I publish using the API and a POST request to the blog's media entry collection. This is where the next problem appears. Those Atom entries for images contain various links, one of them with a ref="enclosure", of which the API documentation (link) tells me to "Use the web address in the href attribute to obtain the binary content of the file". However, my calls to this adress are always answered with 404 response code.
Another url in the Atom entry (this time of the element) is described by the same documentation (see link above) as: "Provides access the document's media. The following operation is supported: GET: Use the web address to obtain the media." When I make a call to this url, as always with basic authentication credentials attached, the response contains the html of the login form of Connections, so API authentication does not seem to be supported on this url. This is only the case for non-public communities, which require authentication, of course, if the picture is publicly availabe all works just fine.
Am I missing something out? Is there another way to retrieve the actual image from a blog's media entry through the API? Are manually uploaded pictures never contained in the media entries result or is this a bug?
It now magically works using the link with ref="enclosure" from the atom entry. I might have gotten something wrong with authentication I guess (although I'm not actually realizing what I'm doing different now than I did before).
Problem remaining: Pictures uploaded through the rich-text editor in the folder /BLOGS_UPLOADED_IMAGES do not appear in the media feed of the blog.

Resources