Commit 10609dae authored by Bastien Durel's avatar Bastien Durel
Browse files

machine-generated schema

parent f5f56840
{
"type": "object",
"properties": {
"organization-name": "#/definitions/organization-name",
"date-range": "#/definitions/date-range",
"contact-info": "#/definitions/email-address",
"report-id": "#/definitions/report-id",
"policies": "#/definitions/policies"
},
"required": ["organization-name","contact-info"],
"definitions": {
"date-range" : {
"type": "object",
"properties": {
"start-datetime": "#/definitions/date-time",
"end-datetime": "#/definitions/date-time"
}
},
"policy" : {
"type": "object",
"properties": {
"policy-type": "#/definitions/policy-type",
"policy-string": "#/definitions/policy-string",
"policy-domain": "#/definitions/domain",
"mx-host": "#/definitions/mx-host-pattern"
}
},
"summary" : {
"type": "object",
"properties": {
"total-successful-session-count": "#/definitions/total-successful-session-count",
"total-failure-session-count": "#/definitions/total-failure-session-count"
}
},
"failure-detail-element" : {
"type": "object",
"properties": {
"result-type": "#/definitions/result-type",
"sending-mta-ip": "#/definitions/ip-address",
"receiving-mx-hostname": "#/definitions/receiving-mx-hostname",
"receiving-mx-helo": "#/definitions/receiving-mx-helo",
"receiving-ip": "#/definitions/ip-address",
"failed-session-count": "#/definitions/failed-session-count",
"additional-information": "#/definitions/additional-information",
"failure-reason-code": "#/definitions/failure-reason-code"
}
},
"policies" : {
"type": "array",
"items" : {
"type": "#/definitions/policy"
"definitions": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "http://geekwu.org/mta-sts.json",
"type": "object",
"title": "The MTA-STS Schema",
"required": [
"organization-name",
"contact-info"
],
"properties": {
"organization-name": {
"$id": "#/properties/organization-name",
"type": "string"
},
"date-range": {
"$id": "#/properties/date-range",
"type": "object",
"required": [
"start-datetime",
"end-datetime"
],
"properties": {
"start-datetime": {
"$id": "#/properties/date-range/properties/start-datetime",
"type": "string"
},
"end-datetime": {
"$id": "#/properties/date-range/properties/end-datetime",
"type": "string"
}
}
},
"contact-info": {
"$id": "#/properties/contact-info",
"type": "string",
"examples": [
"devnull@emaple.com"
]
},
"report-id": {
"$id": "#/properties/report-id",
"type": "string"
},
"policies": {
"$id": "#/properties/policies",
"type": "array",
"items": {
"$id": "#/properties/policies/items",
"type": "object",
"required": [
"policy",
"summary",
"failure-details"
],
"properties": {
"policy": {
"$id": "#/properties/policies/items/properties/policy",
"type": "object",
"required": [
"policy-type",
"policy-string",
"policy-domain",
"mx-host"
],
"properties": {
"policy-type": {
"$id": "#/properties/policies/items/properties/policy/properties/policy-type",
"type": "string"
},
"policy-string": {
"$id": "#/properties/policies/items/properties/policy/properties/policy-string",
"type": "string"
},
"policy-domain": {
"$id": "#/properties/policies/items/properties/policy/properties/policy-domain",
"type": "string"
},
"mx-host": {
"$id": "#/properties/policies/items/properties/policy/properties/mx-host",
"type": "string"
}
}
},
"summary": {
"$id": "#/properties/policies/items/properties/summary",
"type": "object",
"title": "The Summary Schema",
"required": [
"total-successful-session-count",
"total-failure-session-count"
],
"properties": {
"total-successful-session-count": {
"$id": "#/properties/policies/items/properties/summary/properties/total-successful-session-count",
"type": "integer"
},
"total-failure-session-count": {
"$id": "#/properties/policies/items/properties/summary/properties/total-failure-session-count",
"type": "integer"
}
}
},
"failure-details" : {
"type": "array",
"items" : {
"type": "#/definitions/failure-detail-element"
},
"failure-details": {
"$id": "#/properties/policies/items/properties/failure-details",
"type": "array",
"items": {
"$id": "#/properties/policies/items/properties/failure-details/items",
"type": "object",
"required": [
"result-type",
"sending-mta-ip",
"receiving-mx-hostname",
"receiving-mx-helo",
"receiving-ip",
"failed-session-count",
"additional-information",
"failure-reason-code"
],
"properties": {
"result-type": {
"$id": "#/properties/policies/items/properties/failure-details/items/properties/result-type",
"type": "string"
},
"sending-mta-ip": {
"$id": "#/properties/policies/items/properties/failure-details/items/properties/sending-mta-ip",
"type": "string"
},
"receiving-mx-hostname": {
"$id": "#/properties/policies/items/properties/failure-details/items/properties/receiving-mx-hostname",
"type": "string"
},
"receiving-mx-helo": {
"$id": "#/properties/policies/items/properties/failure-details/items/properties/receiving-mx-helo",
"type": "string"
},
"receiving-ip": {
"$id": "#/properties/policies/items/properties/failure-details/items/properties/receiving-ip",
"type": "string"
},
"failed-session-count": {
"$id": "#/properties/policies/items/properties/failure-details/items/properties/failed-session-count",
"type": "integer"
},
"additional-information": {
"$id": "#/properties/policies/items/properties/failure-details/items/properties/additional-information",
"type": "string"
},
"failure-reason-code": {
"$id": "#/properties/policies/items/properties/failure-details/items/properties/failure-reason-code",
"type": "string"
}
}
}
},
"total-successful-session-count" : {
"type": "integer",
"minimum" : 0
},
"total-failure-session-count" : {
"type": "integer",
"minimum" : 0
},
"failed-session-count" : {
"type": "integer",
"minimum" : 0
},
"organization-name" : {
"type": "string"
},
"date-time" : {
"type": "string"
},
"email-address" : {
"type": "string"
},
"report-id" : {
"type": "string"
},
"policy-type" : {
"type": "string"
},
"policy-string" : {
"type": "string"
},
"domain" : {
"type": "string"
},
"mx-host-pattern" : {
"type": "string"
},
"result-type" : {
"type": "string"
},
"ip-address" : {
"type": "string"
},
"receiving-mx-hostname" : {
"type": "string"
},
"receiving-mx-helo" : {
"type": "string"
},
"additional-info-uri" : {
"type": "string"
},
"failure-reason-code" : {
"type": "string"
}
}
}
}
}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment