How would I go about creating a webhook with Epicor cloud?
Situation is this. Making a bidirectional connection to a project management app to Epicor. When a job is updated in Epicor, I need a way to know that it was updated and then send the data to the project management app.
So how would I go about this?
I saw two other posts. One said, to use UD tables and or CDC. Never seen anything related to CDC before, maybe that’s for on premise only? UD tables I looked at quite a while ago. But I don’t believe I saw how I could use UD tables to create a webhook. It’s been a while though.
Whatever table or method you want to use to make the “hook” setup a BPM to call out to your external system. You can use RestSharp to do it if you like and test it all in Postman first. If you are on ST cloud and can’t do BPMs then I think you’re boned.
yeah that. I can’t keep track of the abbreviations I was thinking “Shared Tenant” but yeah “Multi Tenant” that was the intent.
You would need to use custom code yes and perform the HTTP requests manually. There’s no widget for that. For integrations like this I use functions libraries
I can kind of understand why the lack of widget for it, other than the actual call a lot of it is usually integration specific. What would really be helpful is being able to define your own classes.
@carguy you can setup everything and test your integration in Postman and it will actually generate the c# code you need to make the call in Epicor as long as you use RestSharp library to do it, which I would recommend anyways.
In addition to the REST widget (based on the RestSharp library), the next best thing to creating classes would be JSON-typed variables (NewtonSoft or System.Text.Json which is gaining in popularity with the newer versions of .Net).
Abstracting the details away in a widget makes upgrades smoother since the code generation could be altered without having to have to rewrite your code as better libraries are written.
Also the ability to return json datasets directly vs having to string them and then unstring them later that would help greatly for pass through integrations in EFX does it work to stringify them sure but it’s gross and annoying lol
From what I’ve read, it looks like I need to add the restsharp dll to my externals folder. I’m assuming that applies to locally hosted Epicor. But there must be away to add the restsharp dll to epicor cloud. Any ideas?