Loading…
| # | Player | Pos | Status | 2026 Salary |
|---|---|---|---|---|
| 81 | 1B | Active | $0.78M | |
| 87 | 1B | Active | - | |
| 54 | P | Active | $0.78M | |
| 45 | LF | Active | $0.78M | |
| 41 | P | Active | $0.79M | |
| 12 | 3B | Active | $0.78M | |
| 24 | P | Active | $0.86M | |
| 51 | P | Active | $0.78M | |
| 5 | SS | Active | $4.20M | |
| 39 | P | Active | $0.79M | |
| 19 | P | Active | $0.79M | |
| 4 | LF | Active | $0.79M | |
| 77 | P | Active | $0.78M | |
| 14 | C | Injured 60-Day | $0.78M | |
| 3 | RF | Active | $0.82M | |
| 46 | P | Active | $0.78M | |
| 73 | P | Active | $0.78M | |
| 47 | P | Active | $0.79M | |
| 17 | C | Active | $0.78M | |
| 49 | P | Active | $0.78M | |
| 25 | P | Active | $0.78M | |
| 30 | CF | Active | $0.79M | |
| 59 | P | Active | $0.97M | |
| 27 | P | Active | $2.80M | |
| 29 | RF | Active | $0.81M | |
| 72 | P | Active | $0.78M | |
| 84 | 3B | Active | $0.79M | |
| 8 | DH | Active | $0.78M | |
| 40 | P | Active | $1.35M | |
| 20 | C | Active | $5.38M | |
| 52 | P | Injured 60-Day | $0.82M | |
| Kyle Nicolas | P | Active | $0.78M | |
| 43 | P | Active | $0.78M | |
| 56 | P | Injured 60-Day | $0.80M | |
| 70 | P | Injured 60-Day | $0.82M | |
| 26 | 2B | Active | - | |
| 64 | P | Active | $0.82M | |
| 75 | P | Active | $0.78M | |
| 50 | P | Injured 60-Day | - | |
| 55 | P | Active | $1.00M | |
| 74 | P | Active | $0.78M | |
| 76 | P | Active | $0.78M | |
| 28 | 1B | Active | $0.78M | |
| 48 | P | Active | $0.78M | |
| 57 | P | Active | $0.78M |
Roster and status codes: MLB StatsAPI /api/v1/teams/{id}/roster?rosterType=40Man (same upstream as admin-roster-sync.ts). Salary column joins the Spotrac 2026 payroll ledger by exact player name; players the ledger does not list render a dash, never an invented figure. IL statuses (10-day, 15-day, 60-day) are the injured-list view on the Injuries tab.