Triggering temporal cloud workflows

Hi all!

I'd like to trigger temporal.io (cloud) workflows from retool (web). What I have tried so far:

GRPC

I tried to create a GRPC resource: there is not one proto file, but like 100 or so: api/service.proto at master · temporalio/api · GitHub - I also tried to condense it to one file, since I am interested in only one endpoint. But I saw that this package imports proto definitions from google and other places. Is that a viable path?

Temporal Typescript SDK

I tried to import the SDK from here: https://typescript.temporal.io/ via some trickery around document.createElement('script'). I just couldn't get this to even import anything.

Does anybody have any ideas or pointers? Is trying harder with one of these two options any helpful? Or use sth like make.com as an intermediary?

Have a nice day!

Hey @yasin!

I'm not sure whether or not this is possible at the moment on a Cloud-hosted instance. Imported JavaScript libraries typically require a UMD build so there's a good chance the Typescript SDK won't work. You might be able to use a gRPC compiler to generate a single proto file that you can reference, however.

I've done some checking in with the team and people have gotten gRPC connections to temporal to work when self-hosting by using /retool_backend/protos/temporal/api/… as their directory structure and specifying PROTO_DIRECTORY_PATH=/retool_backend/protos. So I imagine that if you can build a single proto file you should be able to connect from Cloud as well.

Sorry that this isn't the most helpful but happy to keep looking into it with you if you have additional questions!

I'm trying to connect to our Temporal server via gRPC. However, I don't believe Retool is properly parsing the gRPC Server Reflection.

$ grpcurl -plaintext localhost:7233 list      
grpc.health.v1.Health
grpc.reflection.v1.ServerReflection
grpc.reflection.v1alpha.ServerReflection
temporal.api.operatorservice.v1.OperatorService
temporal.api.workflowservice.v1.WorkflowService
temporal.server.api.adminservice.v1.AdminService

I'm using ngrok to proxy tcp://localhost:7233 — Plug this into Retool and when I hit "Test Connection" it works. But no gRPC schema is retrieved

Is anyone else having this issue or have an example of successfully adding Temporal as a Resource to Retool.com (we do not want to host our own Retool)?