refactor: add field to APIError struct

This commit is contained in:
2025-11-02 22:39:04 -03:00
parent 92f13fba22
commit 01a7f33054
5 changed files with 25 additions and 3 deletions

View File

@@ -303,6 +303,11 @@ const docTemplate = `{
"description": "Additional error details",
"type": "string"
},
"field": {
"description": "Field name if applicable",
"type": "string",
"example": "name"
},
"message": {
"description": "Human-readable error message",
"type": "string"

View File

@@ -297,6 +297,11 @@
"description": "Additional error details",
"type": "string"
},
"field": {
"description": "Field name if applicable",
"type": "string",
"example": "name"
},
"message": {
"description": "Human-readable error message",
"type": "string"

View File

@@ -8,6 +8,10 @@ definitions:
details:
description: Additional error details
type: string
field:
description: Field name if applicable
example: name
type: string
message:
description: Human-readable error message
type: string

View File

@@ -97,17 +97,23 @@ func (h *ContactHandler) create(w http.ResponseWriter, r *http.Request) {
}
if contact.Name == "" {
BadRequest(w, ErrMissingRequired, RequiredFieldErr("name"))
err := ErrMissingRequired
err.Field = "name"
BadRequest(w, err, RequiredFieldErr("name"))
return
}
if contact.Company == "" {
BadRequest(w, ErrMissingRequired, RequiredFieldErr("company"))
err := ErrMissingRequired
err.Field = "company"
BadRequest(w, err, RequiredFieldErr("company"))
return
}
if contact.Phone == "" {
BadRequest(w, ErrMissingRequired, RequiredFieldErr("phone"))
err := ErrMissingRequired
err.Field = "phone"
BadRequest(w, err, RequiredFieldErr("phone"))
return
}

View File

@@ -23,6 +23,8 @@ type APIError struct {
Message string `json:"message"`
// Additional error details
Details string `json:"details,omitempty"`
// Field name if applicable
Field string `json:"field,omitempty" example:"name"`
}
const content_type = "Content-Type"