SharePoint web hooks without Azure? - sharepoint

Is it possible to create SharePoint web hooks without Azure?
I have a requirement where I need push notifications from a SharePoint list, I read that SharePoint web hooks can be used to achieve it, but customer doesn't have an Azure account and looking into possibilities where it can be achieved without using Azure.

It is absolutely possible. The premise of WebHooks is that SharePoint Online will HTTP POST to a URL you define when the event happens. The only thing that is important is that the WebHook service you create and register with SharePoint Online has to be accessible to the SharePoint Online service. Without getting into specialized networking arrangements with Microsoft this means your service has to be publicly addressable. Azure is used as a common example because it is publicly addressable, it is a Microsoft product and lots of SharePoint Online customers are also Azure customers. There is however nothing that would stop you from using your own hosting solution.
Here is a presentation on WebHooks: https://docs.com/OfficeDevPnP/1223/pnp-web-cast-sharepoint-webhooks

Related

Get instances of running MS Flow Approval Workflow using Rest API

I am looking for APIs to get list of run instances of a workflow on SharePoint Online.
From Microsoft documentation I can get list of workflows in the tenant.
https://learn.microsoft.com/en-us/power-automate/web-api
I would like to get all running workflows of a particular workflow, not only assigned to me
As far as I am aware that Web API does not have an entity for the cloud flow runs (only the desktop flow ones, which is the flowsession entity).
However, you should still be able to use the Service.flow.microsoft.com approach.
For example Stefan Strube has a nice blog on how to create a custom connector for this:
https://2die4it.com/2020/07/08/custom-connector-to-get-flow-run-history/

How to create an HTTP get request from a sharepoint online site, to another sites api

Is it possible to create an HTTP get the request that is sent from SharePoint online and retrieve the data and save it to the SharePoint site in documents?
I do this locally now, and it looks like you can do it with the SharePoint server on an on-premises installation. but I'm not sure about SharePoint online.
Is it possible to run the script as a service on SharePoint online, the way I do locally?
I know I can do something like this with azure so that the whole installation is cloud-based, but I would like to do it on SharePoint online, just for simplicity's sake without the added maintenance, plus we aren't doing anything other than basic file retrieval.
also, any information about scripting in SharePoint online would be helpful. from the documentation I've seen, I can't tell that SharePoint online has this capability.
any help would be great.
It's not possible to run server-side services such as timer jobs on SharePoint Online. All custom logic will "move down" to the client computer, or "move up" to a local server outside the SharePoint farm or SharePoint Online subscription.
Keeping custom code off SharePoint online could prevent the custom code from harming their servers or reduce the performance of their SharePoint Online websites.
BR

Call external service from SharePoint Online web part

We are in the process of moving an on-premise SharePoint installation to SharePoint Online. We have a number of existing C# web parts that we need to convert. These web parts currently access some of our on-premise data... we need to get the web parts working on SharePoint Online; however, we're not certain of the best approach.
We've looked at BCS, but it seems that it is geared more towards synchronizing lists of data via basic CRUD methods. For many of our applications, we are not looking to synchronize lists, we are looking more towards action-oriented methods on a service that can be called on-demand as needed by the web part.
We don't believe the call can be client-side, as the users will often be accessing SharePoint Online from workstations that are not joined to our domain, and we don't want the user to have to separately authenticate to our service (i.e. we want our service to trust only the SharePoint Online backend).
Our ideal setup would be to have our C# code for the web part call into our web service (hosted on our domain, authenticating with a service account from the SPO secure store), passing the current username from the SharePoint context, and getting back a response that the web part can then use for its processing.
But as we understand, the web parts in SharePoint Online are sandboxed in such a way that they cannot make external HTTPS calls via HttpWebRequest.
We've searched for how-to examples or documentation related to our use case, and haven't found anything saying it's possible or that it's not possible. Does anybody know if it's possible for a web part to get data in this way? Is there some other direction we should be taking to achieve this?
In SharePoint online, if you are developing a SharePoint hosted app; You will be able to call external endpoints (EPs) after adding these endpoints in the manifest file.
If you haven't added these endpoint to the manifest file, This means you are not permitting the app to call an external EPs.
You don't need BCS in SharePoint online to call external EPs. Here is a sample on how to do this using JavaScript.
https://msdn.microsoft.com/en-us/library/office/fp179895.aspx
Let me know if you have any other questions.

Accessing all SiteCollections on a SharePoint Server with WebService

I have a bit of challenge. Knowing only the basic URL for the sharepoint installation, can I get a list of the site collections that have been created using only the basic web services that are installed?
Using the Webs web service or the SiteData web service I've been able to get information on the default site collection that's at the base URL (http://MySharePointServer/). I can also get a full list of sites below the site collection and a description of the site collection itself but I can't seem to get any info on the other site collections under the same web application.
Any help would be appreciated, I thought it would be a piece of cake to get the info.
Unfortunately, no. That functionality isn't available from the out-of-the-box web services. The only option that might work is using the Search Web Service (I'm not familiar enough with it to know).
This walkthrough describes how to add your own custom web services to the product. I strongly recommend this approach as it's very likely there will be other missing functionality you will need to add - if not now, in the near future.

SharePoint (MOSS) hosting with custom code allowed

I'm looking for a SharePoint (MOSS) shared hosting provider that supports deployment of custom solutions (.WSPs) - it'd be okay if it was medium trust. I'm building a public Internet site on SP and the client doesn't want to host it or pay for the license all up front. Any suggestions?
I'm not aware of any shared hosting plans that support the deployment of custom solutions. From what I've seen, you'd need at least a semi-dedicated hosting plan. I'm a developer at Fpweb.net and I know that you can do this using any of their semi-dedicated plans.
if you are looking to develop a custom Sharepoint Page, you may consider the sharepoint plan at ASPHostPortal.com. They allow not only medium trust, but full trust mode and this certainly allow you to create a custom page via any Sharepoint Designer tool that you may have.

Resources