So, there's 2 ways to read this, either we want an "exists" check, or following the SQL, we want a count of all instances.   This snippet can be set to do either case based on the existscheck boolean.  Ideally though, you would have an index defined, and this could be read much more efficiently than having to scan an entire global

set count=0
set existscheck=0 //Set to 1 if we only want to find first instance
set targetValue=1329
set key = ""
for   {
    set key = $ORDER(^DataTest(key))
    quit:key=""
    if targetvalue = +$LG(^DataTest(key),2) do $INCREMENT(count)
    quit:existscheck&&count
}
w !,"Count value is "_count

I haven't put a massive amount of thought into this so it might be garbage for time/space complexity....

Set y = "Red, Green, Orange, Yellow"
Set x = "Purple, Black, Yellow, Pink"
set x=$ZSTRIP(x,"*W")
set y=$ZSTRIP(y,"*W")
k ^||members
for i=1:1:$L(x,","){
    set ^||Members($P(x,",",i),1)=""
}

for j=1:1:$L(y,","){
    set ^||Members($P(y,",",j),2)=""
}

//Now do a quick traverse of our members
set key=""
set both=""
for   {
    set key=$O(^||Members(key))
    quit:key=""
    set key2=""
    set key2=$O(^||Members(key,key2))
    if ($O(^||Members(key,key2))'="" set both=both_key_","
}

w !,"These records are in both lists "_both

You absolutely can do this.   Each namespace is set with a Globals DB and a Routines DB.   The Globals are your default data storage, and the Routines are where your code lives

Further to this, there are an array of mapping features allowing your data and code to be spread over multiple databases.   You can read more about this here: https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...

Having just done the same thing today, following Marc's comment (which is the same code in the documentation for MIMEParts) should get you what you need.

As it stands, I'm pretty sure you are just passing a handle to a stream to the FormData, rather than referencing the content of the stream.  This section of the example will correctly populate the HTTP Request body:

  // Write out Root MIME Element (containing sub-MIME parts) to HTTP Request Body.
    Set writer = ##class(%Net.MIMEWriter).%New()
    Set sc = writer.OutputToStream(tHttpRequest.EntityBody)
    if $$$ISERR(sc) {do $SYSTEM.Status.DisplayError(sc) Quit}
    Set sc = writer.WriteMIMEBody(rootMIME)
    if $$$ISERR(sc) {do $SYSTEM.Status.DisplayError(sc) Quit}

In your example call, the top level is a JSON object, not an array so iterating over it won't work.  You would need to access it from the children property

However, he ZEN JSON functionality is deprecated in recent versions of IRIS, and the native JSON support is a bit friendlier to use.  The documentation is here: https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls...

If you use

set obj =  {}.%FromJSON(%request.HttpResponse.Data) 

you should get access to the json object, and then you can use %GetIterator to cycle over the array