I seem to remember that 1200 is the default rating given to players who haven't played sufficient rated games to have built one up? But the rating of 400 contained in the endpoint looks anomalous to me.
Bug in daily960 rating for unrated player

I believe the default rating is either given by what a new player says their rating is or by what ratings they have in other disciplines. Regardless, it is a provisional rating, so it will change dramatically after a few wins/losses and the problem will fix itself.

Initial rating is now a choice at sign up. What's even odder is that the web page stats shows the rating has dropped 800 points even though no rated games played.

No the error shown was an example. The problem is still there for players in the same circumstance and the system will show an error. The fact that this players rating, and the next, will get resolved when they have finished a game does not fix the bug in the system.

Any idea where the rating of 400 comes from? Put another way, why does the system show a drop of 800 points?

I suspect now after some thought this is not an API bug, but a web page stats issue which is carried through to the members API stats and the web page match roster is still using the member selected start rate which carries through to the API match registration.

So the match has now started and the issue now shows as a difference for a number of players and probably all Daily 960 unraters. Here is a section of the roster and the equivalent API
Board No | Name | Rating | Name | Rating |
168 | finnkeddin | 1200 | medsteroni | 1052 |
169 | roywebbhastings | 400 | nimajnebula125 | 1043 |
170 | orangez10 | 800 | navipacrulz | 1042 |
171 | kwatson27 | 800 | jebent | 1039 |
172 | morgz_f | 800 | tomengelhardt | 1038 |
173 | gooliver10 | 800 | anthos1986 | 1036 |
174 | gseekings | 800 | brianpawn | 1037 |
175 | ll2308 | 1189 | classifiedking | 1032 |
176 | steadfast61 | 1187 | gruumsh | 1031 |
177 | quiddity | 1187 | boboneill | 1029 |
Match roster shows different rating value to API of player stats.
Seems to apply with a player new to C960 games and only unrated games in archieve
Example: @roywebbhastings
https://www.chess.com/stats/daily/chess960/roywebbhastings rating displayed as 400
In roster (Starting at 5pm today) Board #167
https://www.chess.com/club/matches/1334529/games?&p=2
rating displayed as 1200
https://api.chess.com/pub/match/1334529
API stats https://api.chess.com/pub/player/roywebbhastings/stats
Rating shown as 400