I can send OSO order in demo ,but Access denied in Replay

After you create the app, you must give it some permissions, for instance if u only want to stream market data you change the drop down below market data from denied to read only.

Once that’s done, you’ll see a popup with a generated string – DO NOT LOSE THIS or else you’ll have to start over.

You won’t be accessing the app with curl, but look at the output to see the relevant fields; name, password, appId, appVersion, deviceId, cid, and sec. During testing some aren’t necessary but if you want to go live ALL will be necessary identical, so just make sure they are all properly setup int he beginning.

curl -X POST "https://demo.tradovateapi.com/v1/auth/accesstokenrequest" \
 -H "accept: application/json" \
 -H "Content-Type: application/json" \
 -d "{ \
   \"name\": \"xxxx\", \
   \"password\": \"xxxx\", \
   \"appId\": \"xxx\", \
   \"appVersion\": \"xxx\", \
   \"deviceId\": \"xxxx\", \
   \"cid\": \"xxx\", \
   \"sec\": \"xxx\" \
 }"

After the app is created, you’ll see

When u try to connect via websockets, you’ll get an email notification like the one u provided but it will have the appName that you registered.