Run your local IRIS http endpoints as https on the internet from your env
By default InterSystems IRIS expose your endpoints using http, but can be necessary run https from your dev env and/or get public internet access to your app. You can buy or get a certificate and config a gateway, spending many hours or use a great public service called ngrok. Follow the steps:
1 - Run your app, I will use FHIR template as sample, see:
1.1 download the app: git clone https://github.com/intersystems-community/iris-fhir-template.git
1.2 go to the app dir: cd iris-fhir-template
1.3 run the app: docker-compose up -d
1.4 get access to the endpoint from postman or other api client: http://localhost:32783/fhir/r4/Patient/1
2 - You can see the endpoint runs only localhost and using http. Now we use ngrok to resolve this:
2.1 - Access https://ngrok.com/, create a free account and login in the ngrok. You can see many options, including use ngrok into your yml files.
2.2 - Into ngrok go to Setup & Installation (https://dashboard.ngrok.com/get-started/setup) and download the ngrok specific to your OS.
2.3 - Unzip the file to your app root path (or any path, like your applications folder).
2.4 - Authenticate your client to the ngrok server using instructions in the Authentication > Your Authtoken (https://dashboard.ngrok.com/auth/your-authtoken). In my case (windows) I ran:
2.5 - Ngrok save your authtoken in your home directory, so next times will be not necessary authenticate again, only use the service.
2.6 - Now, you need to know your http port, in my case is 32783 (http://localhost:32783). Run:
2.7 - You can see your public https or http address to your endpoint:
2.8 - Test your new endpoint in the postman or any rest client, in my case https://9ec669d2221b.ngrok.io/fhir/r4/Patient/1.
2.9 - Ngrok give you many other use case scenarios (webhook, ssh, etc), see: https://dashboard.ngrok.com/get-started/tutorials.