Time Fabric
API
Last updated: May 14, 2026
Authentication
Create an API key from a server's Settings page under API access. Use Read for dashboards or promotion pages. Enable Write only for trusted tools that need to edit times.
Send the key with every request as Authorization: Bearer YOUR_KEY. You can also use the X-Time-Fabric-Key header.
Read codewords
GET /api/v1/guilds/GUILD_ID/codewords returns the configured codewords for that server.
Read times
GET /api/v1/guilds/GUILD_ID/times returns all tracked times. Add ?codeword=ambulance to filter one codeword.
GET /api/v1/guilds/GUILD_ID/users/USER_ID/times returns all tracked times for one Discord user.
Edit times
POST /api/v1/guilds/GUILD_ID/times/USER_ID/CODEWORD/adjust accepts JSON such as {"minutes": 30, "reason": "Promotion correction"}. Use {"minutes": 30, "direction": "remove"} to remove time.
PUT /api/v1/guilds/GUILD_ID/times/USER_ID/CODEWORD accepts JSON such as {"duration": "12h 30m", "reason": "Imported promotion time"} to set the total.
Response data
Time entries include userId, displayName, codeword, codewordLabel, totalMs, totalSeconds, total, clockedIn, clockedInAt, lastClockedInAt, and updatedAt.
Use totalSeconds or totalMs for promotion automation so your own website does not need to parse the formatted total text.