Contact Properties
contact-properties · built-in
info
experience: documentationexperience: discoverability
spec: info
Contact object must have "name", "url" and "email".
Contact object must have “name”, “url” and “email”.
Rule definition
The full Spotlight rule — drop it into a ruleset (.spotlight.yaml / .spectral.yaml) and run it with any Spotlight tool.
contact-properties:
title: Contact Properties
reference: https://spotlight-rules.com/spec/rules/openapi/contact-properties/
description: Contact object must have "name", "url" and "email".
message: Contact object must have "name", "url" and "email".
severity: info
given: $.info.contact
then:
- field: name
function: truthy
- field: url
function: truthy
- field: email
function: truthy
tags:
- format:openapi
- spec:info
- experience:documentation
- experience:discoverability
prompt: "You are editing an OpenAPI document to satisfy the Spotlight API
governance rule 'contact-properties' (Contact Properties). Requirement:
Contact object must have \"name\", \"url\" and \"email\". To fix: Ensure
`name` is present and non-empty at each matching location. Also: Ensure
`url` is present and non-empty at each matching location. Also: Ensure
`email` is present and non-empty at each matching location. This rule is
evaluated at the JSONPath `$.info.contact` — inspect every location it
matches and correct only what violates the rule. Make the smallest change
that satisfies the rule, leave all unrelated content, key order, comments,
and formatting unchanged, and keep the document valid OpenAPI. Return only
the complete corrected document, with no commentary."
AI fix prompt — send this to Claude, Gemini, or ChatGPT with your artifact to auto-fix this rule
You are editing an OpenAPI document to satisfy the Spotlight API governance rule 'contact-properties' (Contact Properties). Requirement: Contact object must have "name", "url" and "email". To fix: Ensure `name` is present and non-empty at each matching location. Also: Ensure `url` is present and non-empty at each matching location. Also: Ensure `email` is present and non-empty at each matching location. This rule is evaluated at the JSONPath `$.info.contact` — inspect every location it matches and correct only what violates the rule. Make the smallest change that satisfies the rule, leave all unrelated content, key order, comments, and formatting unchanged, and keep the document valid OpenAPI. Return only the complete corrected document, with no commentary.
| Artifact | OpenAPI |
|---|---|
| Applies at (given) | $.info.contact |
| Severity | info — educational by default; raise to warn/error to enforce |
| Reference | https://spotlight-rules.com/spec/rules/openapi/contact-properties/ |