Regarding your comment @Evgeny Shvarov: "there were no compilation errors, no console messages - no evidence of what is wrong.", in these HTTP (CSP/Web) kind of situations/problems it is recommended to use "CSP Logging" (aka ISCLOG).

If you turn on the %ISCLOG you should be able to see the error you are getting.

For example if I changed my REST dispatch class from the correct: 'Demo.Debug.REST' to a non-existent: 'Demo.Debug.REST11', and try and call my service, I can see from the ISCLOG-based table -

%SYS>>SELECT ID, Category, LogLevel, Message FROM %Library.SysLogTable WHERE Message [ 'ERROR'

| ID | Category 	| LogLevel  | Message 					|
| -- | -- 		| -- 	    | -- 						|
| 39 | CSPServer 	| 2         | [HandleError]: ERROR #5002: ObjectScript error: <CLASS DOES NOT EXIST>CSPDispatch+147^%SYS.cspServer *Demo.Debug.REST11 |

So you can see you would be able to observe you are getting a <CLASS DOES NOT EXIST> error, and the name of the class it is trying to access.

(Of course there are other entries in the log, before, and after this entry, that can also help you relate this error to the URL you are trying to access)

Looks like a great event!

(Especially the Lego part 😉)

Kudos to the Iberia team and all international support!

AlertGroups are defined in the context of using the Managed Alerts framework.

See related docs. And specifically the section about defining them.

Tani Frankel · Dec 28, 2025 go to post

It seems like you might have included in the question a different Transformation than the one the Warning is pointing at?

As it refers to this one:

osuwmc.Scott.FHIR.DemoOutboundHL7Message
(and not: osuwmc.Epic.FHIR.DTL.FHIRResponseToPatient)

And it seems like the Source of that Transformation is expected to be an HL7 message (with a DocType property) but for some reason, at least at runtime, the source is instead of type: osuwmc.Epic.FHIR.DataStructures.PatientSearch.Record

In any case it looks like we're not seeing the wider picture in order to help you address this issue.

Tani Frankel · Dec 27, 2025 go to post

Are you instantiating the 'target' variable?...

It doesn't look like it, hence your Invalid Oref when trying to access the MRN property (unless you're sending it in ByRef, but in that case it seems not be an object either).

So it looks like you were focused on the right side of your SET command, though the problem might be on the left side.

Tani Frankel · Dec 25, 2025 go to post

Note in the meantime, it seems like Docker Login does still work.
So for example I can still:
 

docker login -u="<my user>" -p="<my password hash>" containers.intersystems.com
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Login Succeeded

And then also:

docker pull containers.intersystems.com/intersystems/irishealth:latest-cd
latest-cd: Pulling from intersystems/irishealth
20043066d3d5: Already exists
8216b0a74174: Downloading [>                                                  ]  537.9kB/395.2MB
928364a257ac: Pulling fs layer
dadfc3b0a484: Downloading [====>                                              ]  433.5kB/5.24MB
122f1f35c4aa: Waiting

So perhaps this can help you for now.

Tani Frankel · Dec 25, 2025 go to post

Indeed the URL is available but when you try to login you get the error you mention.
I'll report to our Support

Thank you Dmitrii

Tani Frankel · Dec 22, 2025 go to post

Hi Dmitrii,

It shouldn't be too difficult.

Yes, you can use Keycloak or other servers, and you'd need to make some definitions/configurations, indeed including scopes.

I'll plan to get into this in another Article, but in the meantime you can see this example (including related GitHub repo and videos).

Note this example uses our older Cloud managed service FHIR Server, but on the OAuth server side this behaves the same (I used auth0 there).

Tani Frankel · Dec 9, 2025 go to post

And now there's already also this nice "Wizard" that helps with these definitions -

Tani Frankel · Dec 8, 2025 go to post

Happy Birthday! 🎂

The InterSystems community wouldn't have been the same without... well... The Community!!

Special congratulations to all the Community management team! You do such a great job for the benefit of all of us.

And of course to all the members out there who contribute and take a part in this great place.

Looking forward to the next 10 years!

Tani Frankel · Sep 25, 2025 go to post

Wow! RESTFORMS was one of my all-time favorites!

Great contributions all around!

Well deserved recognition!

Tani Frankel · Sep 17, 2025 go to post

Thanks @Ariel Glikman, great article, and samples on the OE app/GitHub repo.

I believe anyone deploying IAM in a production-grade environment must consider and would greatly benefit from, using one of these options, and this would be an excellent jump board.

Tani Frankel · Sep 2, 2025 go to post

Probably best you ask whoever sent you these classes.

In general though %JSON.Adaptor has the %JSONFIELDNAME parameter, and not JSONNAME. Hence the error you got.

[There is an existing package shared in the past on the Community, see for example here, with some similar functionality, that did have this JSONNAME parameter. But I don't know if this is related in any way to the code you have]

[Note I also see you are using a %DynamicObject property ("Rationale"), and depending on what you expect to do with it, I don't know how well that will play with the %JSON.Adaptor export, per your use-case.]

Tani Frankel · Aug 14, 2025 go to post

In general (and messages and streams are just one example) there is a trade-off between more traceability and visibility vs. storage/space (and performance).

QuickStream is indeed a mechanism used internally to address the performance and storage concerns, but, to complete this with a traceability option, there is also a dedicated Business Operation that can add the desired data - see Enhanced Debugging and the introduction of HS.Util.Trace.Operations. This simply adds more calls in the session, to this Operation which (could) include the stream data. The advantage of this is that you can turn it on or off, and you can control also the "level" of tracing. Take into account of course that this needs to be done ahead of what you want to trace/visualize, you can't "apply" this retroactively.

Tani Frankel · Aug 7, 2025 go to post

This should work.

What HTTP Method are you using POST (or GET)?

What HTTP status are you getting - 200 OK (or 405 Method Not Allowed)?

Tani Frankel · Jul 25, 2025 go to post

If you use the InterSystems CLI vis your OS shell, you can also simply run:

#iris python instancename

See the iris command docs (at least for some OSs).

Tani Frankel · Jul 20, 2025 go to post

Examining the Audit database (specifically the LoginFailure event, and perhaps Protect; make sure they are Enabled for your testing) might also be helpful.

Tani Frankel · Jul 16, 2025 go to post

Hi Dmitrii,

From the discussion in the comments it seems like you're trying to use "Workers", but did you try to use the Event mechanism for your use-case?

See also this related article (and this one as well).

By the way here's a Docs reference of using this from Python.

I don't have a wider context of this, but in the IRIS Interoperability functionality, behind the scenes of the Interoperability components, and the Messages and Queues managed there, this Event mechanism is used. So perhaps if you are already using IRIS's Interoperability capabilities, you can implement this in the higher level of the Business Components in your Interoperability Production, rather than with the lower level code using the Event class.

The Workers mechanism you tried to use is intended more for distributing parallel work, and the Event API is more for messaging and queuing scenarios, which sounds more like your use-case.

This article might also be of interest to you as it discusses moving from "Workers" to "Events".