PlatformsFacebookReels

FBUnifiedVideoSeenStateMutation

Domainreels
Kindmutation
doc_id9749301061815436
Path/api/graphql/
Sendsinput
Readsxfb_fb_shorts_seen_state_mutation.viewer
Called fromFBUnifiedVideoSeenStateMutation
reaev_5b1d67703bcc2154905f7461407849c35b29d19eaf9efca5ad6f5e1b8f46008a

Seen 96 time(s) in 4 run(s).

ActionOur stepTimesStatusTookAfter step startErrors
inspectstep 3: clickRole button "…"2200372–503 ms1339–1467 ms—
inspectstep 5: clickRole button "…"1200521 ms624 ms—
inspectstep 7: clickRole button "…"2200430–442 ms519–1157 ms—
inspectstep 9: clickRole button "…"3200382–435 ms636–1639 ms—
inspectstep 11: clickRole button "…"3200398–636 ms599–1608 ms—
inspectstep 12: clickRole button "…"1200375 ms455 ms—
inspectstep 13: clickRole button "…"2200515–1110 ms499–1201 ms—
inspectstep 14: clickRole button "…"2200519–1076 ms483–1010 ms—
inspectstep 16: clickRole button "…"2200407–758 ms546–3011 ms—
inspectstep 18: clickRole button "…"2200494–606 ms545–2454 ms—
inspectstep 19: clickRole button "…"3200372–554 ms711–2444 ms—
inspectstep 20: clickRole button "…"2200359–666 ms609–1452 ms—
inspectstep 21: clickRole button "…"1200864 ms503 ms—
inspectstep 23: clickRole button "…"1200639 ms530 ms—
inspectstep 25: clickRole button "…"2200418–428 ms1282–2395 ms—
inspectstep 26: clickRole button "…"1200541 ms483 ms—
inspectstep 28: clickRole button "…"1200438 ms551 ms—
inspectstep 29: clickRole button "…"2200402–836 ms481–2620 ms—
inspectstep 31: clickRole button "…"2200480–3601 ms646–1240 ms—
inspectstep 33: clickRole button "…"2200488–2210 ms589–2499 ms—
inspectstep 35: clickRole button "…"2200433–580 ms537–1532 ms—
inspectstep 37: clickRole button "…"2200381–429 ms495–1297 ms—
inspectstep 39: clickRole button "…"2200388–523 ms542–1624 ms—
inspectstep 41: clickRole button "…"2200464–632 ms524–1420 ms—
inspectstep 42: clickRole button "…"1200378 ms522 ms—
inspectstep 43: clickRole button "…"2200433–769 ms472–1441 ms—
inspectstep 44: clickRole button "…"1200381 ms461 ms—
inspectstep 46: clickRole button "…"2200452–500 ms1595–1770 ms—
inspectstep 48: clickRole button "…"1200444 ms734 ms—
inspectstep 49: clickRole button "…"1200424 ms442 ms—
inspectstep 50: clickRole button "…"1200369 ms482 ms—
inspectstep 51: clickRole button "…"1200584 ms531 ms—
inspectstep 52: clickRole button "…"1200492 ms499 ms—
inspectstep 53: clickRole button "…"1200470 ms422 ms—
inspectstep 54: clickRole button "…"1200486 ms752 ms—
inspectstep 55: clickRole button "…"1200569 ms568 ms—
inspectstep 56: clickRole button "…"1200400 ms514 ms—
inspectstep 57: clickRole button "…"2200407–427 ms474–1484 ms—
inspectstep 58: clickRole button "…"1200592 ms537 ms—
inspectstep 59: clickRole button "…"1200593 ms489 ms—
inspectstep 61: clickRole button "…"1200375 ms522 ms—
inspectstep 63: clickRole button "…"1200361 ms554 ms—
inspectstep 64: clickRole button "…"1200525 ms811 ms—
inspectstep 66: clickRole button "…"1200375 ms1432 ms—
inspectstep 67: clickRole button "…"1200444 ms516 ms—
inspectstep 68: clickRole button "…"1200457 ms1101 ms—
inspectstep 69: clickRole button "…"2200424–450 ms568–1145 ms—
inspectstep 71: goto /reel/1200388 ms1950 ms—
inspectstep 8: clickRole button "…"1200384 ms1612 ms—
inspectstep 10: clickRole button "…"1200401 ms1371 ms—
inspectstep 12: clickAny 1 x link /see owner profile$/1200383 ms2420 ms—
inspectstep 15: clickRole button "…"2200373–463 ms1170–1345 ms—
inspectstep 21: clickAny 1 x link /see owner profile$/1200365 ms2032 ms—
inspectstep 24: clickRole button "…"1200478 ms1446 ms—
inspectstep 8: clickAny 1 x link /see owner profile$/1200377 ms2073 ms—
inspectstep 19: clickAny 1 x link /see owner profile$/1200477 ms2310 ms—
inspectstep 22: goto /reel/1200414 ms39 ms—
inspectstep 27: clickRole button "…"1200377 ms1358 ms—
inspectstep 62: clickRole button "…"1200478 ms1406 ms—
inspectstep 65: clickRole button "…"1200403 ms2097 ms—
inspectstep 72: clickRole button "…"1200421 ms1133 ms—
inspectstep 76: clickRole button "…"1200498 ms1526 ms—
inspectstep 80: clickRole button "…"1200490 ms1288 ms—
inspectstep 83: clickRole button "…"1200540 ms2213 ms—
inspectstep 88: clickRole button "…"1200787 ms2077 ms—
inspectstep 92: clickRole button "…"1200727 ms1249 ms—
inspectstep 96: clickRole button "…"12001449 ms1597 ms—
inspectstep 4: clickRole button "…"1200435 ms1251 ms—
inspectstep 6: clickAny 1 x link /see owner profile$/1200708 ms3601 ms—
inspectstep 17: clickRole button "…"1200423 ms1543 ms—

What it sent and what came back (the newest 3 from our runs)

Read from each run's own recording (rule 73), secrets and signed link tokens taken out. Kept in ~/.logCli/rea/clientFacts.json, so it stays after the run is pruned.

runs/inspect/20261023T080801_61594063207669, step 4: clickRole button "…": 200, 435 ms

Sent:

{
  "fb_api_caller_class": "RelayModern",
  "fb_api_req_friendly_name": "FBUnifiedVideoSeenStateMutation",
  "server_timestamps": "true",
  "variables": {
    "input": {
      "video_ids": [
        "1967507720600004"
      ],
      "actor_id": "61594063207669",
      "client_mutation_id": "1"
    }
  },
  "doc_id": "9749301061815436"
}

Answered:

{
  "data": {
    "xfb_fb_shorts_seen_state_mutation": {
      "viewer": {
        "actor": {
          "__typename": "User",
          "id": "61594063207669"
        }
      }
    }
  },
  "extensions": {
    "server_metadata": {
      "request_start_time_ms": 1792742958619,
      "time_at_flush_ms": 1792742958693
    },
    "is_final": true
  }
}

runs/inspect/20261023T080801_61594063207669, step 6: clickAny 1 x link /see owner profile$/: 200, 708 ms

Sent:

{
  "fb_api_caller_class": "RelayModern",
  "fb_api_req_friendly_name": "FBUnifiedVideoSeenStateMutation",
  "server_timestamps": "true",
  "variables": {
    "input": {
      "video_ids": [
        "1607183873661381"
      ],
      "actor_id": "61594063207669",
      "client_mutation_id": "2"
    }
  },
  "doc_id": "9749301061815436"
}

Answered:

{
  "data": {
    "xfb_fb_shorts_seen_state_mutation": {
      "viewer": {
        "actor": {
          "__typename": "User",
          "id": "61594063207669"
        }
      }
    }
  },
  "extensions": {
    "server_metadata": {
      "request_start_time_ms": 1792742992626,
      "time_at_flush_ms": 1792742992705
    },
    "is_final": true
  }
}

runs/inspect/20261023T080801_61594063207669, step 9: clickRole button "…": 200, 435 ms

Sent:

{
  "fb_api_caller_class": "RelayModern",
  "fb_api_req_friendly_name": "FBUnifiedVideoSeenStateMutation",
  "server_timestamps": "true",
  "variables": {
    "input": {
      "video_ids": [
        "1607183873661381"
      ],
      "actor_id": "61594063207669",
      "client_mutation_id": "1"
    }
  },
  "doc_id": "9749301061815436"
}

Answered:

{
  "data": {
    "xfb_fb_shorts_seen_state_mutation": {
      "viewer": {
        "actor": {
          "__typename": "User",
          "id": "61594063207669"
        }
      }
    }
  },
  "extensions": {
    "server_metadata": {
      "request_start_time_ms": 1792743039619,
      "time_at_flush_ms": 1792743039691
    },
    "is_final": true
  }
}

What it does

Marks a reel as seen for the account (xfb_fb_shorts_seen_state_mutation); it sends input and reads back the viewer. It fired 40 times, about 0.4-2.6 s after each step that left a reel: Next card, the see owner profile link and goto /reel/.

What our machine does with it

The swipe step (button "Next card") sends it, and reel.ts records it as Facebook's answer to Next card (run 20261020T050610, step 11). The machine does not wait for it: a swipe passes when the URL changes to the next /reel/<id> (checkStep).

What can go wrong

None seen: 40 calls, all 200, mostly under 800 ms, at most 3601 ms. If a swipe did not move on, the URL stays the same and checkStep reports the URL didn't change. If the step fails anyway, checkStep reports it as an issue: log facebook warmup reel record goes on and outlines it, a run stops there, and a checkpoint or login page ends it as blocked.