aboutsummaryrefslogtreecommitdiffstats
path: root/pydis_site/apps/api/models
diff options
context:
space:
mode:
Diffstat (limited to 'pydis_site/apps/api/models')
-rw-r--r--pydis_site/apps/api/models/bot/tag.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/pydis_site/apps/api/models/bot/tag.py b/pydis_site/apps/api/models/bot/tag.py
index 0dc4830c..fc0db4e4 100644
--- a/pydis_site/apps/api/models/bot/tag.py
+++ b/pydis_site/apps/api/models/bot/tag.py
@@ -23,10 +23,15 @@ def validate_tag_embed_fields(fields):
'inline': (is_bool_validator,),
}
+ required_fields = ('name', 'value')
+
for field in fields:
if not isinstance(field, Mapping):
raise ValidationError("Embed fields must be a mapping.")
+ if not all(required_field in field for required_field in required_fields):
+ raise ValidationError("Embed fields must contain both a 'name' and a 'value' field.")
+
for field_name, value in field.items():
if field_name not in field_validators:
raise ValidationError(f"Unknown embed field field: {field_name!r}.")