diff --git a/pkg/api/obligations.go b/pkg/api/obligations.go
index 99ded14..fb89375 100644
--- a/pkg/api/obligations.go
+++ b/pkg/api/obligations.go
@@ -167,7 +167,10 @@ func CreateObligation(c *gin.Context) {
 		return
 	}
 
-	result := db.DB.
+	username := c.GetString("username")
+	ctx := context.WithValue(context.Background(), models.ContextKey("user"), username)
+
+	result := db.DB.WithContext(ctx)
 		Where(&models.Obligation{Topic: obligation.Topic}).
 		Or(&models.Obligation{Md5: obligation.Md5}).
 		FirstOrCreate(&obligation)