For JSON, it's essential to support true and false, as it is expected by the majority of Web and mobile UI frameworks. So IRIS can recieve a lot of JSON llike:

{"p1":true,"p2":false}

And should be able easily response with;

{"p1":false,"p2":true}

, and not:

{"p1":$$$NO,"p2":$$$YES}

Set dObj={"idea":(true), "doubt":(false)}

Do you think this is better? ;)

Actually, my another proposal is to have true and false as part of the language, where true=1 and false 0 or similar for booleans.

Thank you, @Steve Pisani ! Thanks for sharing your experience! Yes, there can be different tools and combinations that provide results of decent quality - some friends of mine also consider Antigravity (and Gemini) or Claude Code with Cursor. I hope we'll end up with several working recipes to speed up the development of usual things x100 times.

Yes, it is OK to avoid any ObjectScript or Embedded Python.

Yes it's OK to have only R from CRUD or UD from CRUD. Or only C :) All CRUD are also welcomed!

I see. And in my case some sets of parameters cause an anomaly, and it is not very effective to investigate it one-by-one

Thank you, @Vitaliy Serdtsev !

If enabled auditing gives the ability to see parameters, or the ability to copy/paste into SQL query tool a ready/made sql query that has been running in the system?

Thank you, @Yuri Marx @Robert Cemper ! Works for me as well - my issue was that JSON.Adapter is case sensitive. if payload comes as:

{  "strprop": "string",   "BoolProp": true

error fires (very unreadable). I thought that reason is the boolean value, but turned out it is property naming issue - should 100% match either name in a class description, or special JSON property name clause.

Faced the same issue. What is the size limitation on working with streams in DynamicObjects/JSON? 1MB?

This is how our ^%REST service is organized, that consumes OpenAPI spec (unfortunately not the latest one, but still workable 2.0) and generates package.spec.cls with map , package.disp.cls with dispatch and params handling and package.impl.cls with business logic implementation stubs. 

But what ^%REST doesn't provide - it doesn't generate unit-tests to make sure that all the impl.cls methods and dispatch methods work as expected. @David Hockenbroch's article here is very focused exactly on this gap, thank you, Dave.

I'm still curious what does [identity] do here?

property id as%Library.BigInt [ identity ];

is it only for "Object" access and not for SQL?

Ah, I see - 

  VALUES (saleId,companyId,productId,saleDate,saleAmountUSD)

Impressive indeed.

I'm curious how and if the approach work if the id name in csv is diffent of "id", e.g.."CompanyId"?

Wow. Thanks @Vitaliy Serdtsev !

This is impressive. 

So if I understand properly, LOAD DATA guesses somehow that id is the idkey and primarykey here?

&sql(LOAD DATA FROM FILE 'C:\data\companies.csv'
  INTO dc_onetomany.companies(id,name,industry,description,website)
  USING {"from":{"file":{"header":true}}})

if AllowIdentityInsert =1?