After uploading bytes to Pinterest’s presigned S3 endpoint, the publisher polls GET /v5/media/{id} until status reaches a terminal state. failed surfaces with this rule.
Pinterest validates the uploaded video — codec, container, duration ≤ 5 min, aspect ratio. Failures don’t come back from the upload itself (S3 returns 204 either way); they only show up on the status poll. Catching the terminal-failed state as a structured rule lets the dashboard’s Post Log filter on it.