{
  "openapi": "3.0.3",
  "info": {
    "title": "Xeams API 1.2",
    "description": "Xeams API is based on OpenAPI 3.0 specification. You can find out more about it\n  on [https://www.xeams.com/api.htm](https://www.xeams.com/api.htm)",
    "contact": {
      "email": "support@synametrics.com"
    },
    "version": "1.1.11"
  },
  "externalDocs": {
    "description": "Find out more about Xeams",
    "url": "https://www.xeams.com"
  },
  "servers": [
    {
      "url": "http://localhost:5272/api"
    }
  ],
  "tags": [
    {
      "name": "Xeams",
      "description": "Everything about your Pets",
      "externalDocs": {
        "description": "Find out more",
        "url": "http://www.xeams.com"
      }
    }
  ],
  "paths": {
    "/info": {
      "get": {
        "tags": [
          "Test Connectivity"
        ],
        "summary": "Test connnectivity",
        "description": "Send an email using Xeams API",
        "operationId": "info",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the version and build number of Xeams",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/email/validate": {
      "get": {
        "tags": [
          "Validates an email address"
        ],
        "summary": "Validates an email address",
        "description": "Validates an email address",
        "operationId": "validate",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "re",
            "in": "query",
            "description": "Recipient's Email address",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "se",
            "in": "query",
            "description": "Sender's Email address",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "deep",
            "in": "query",
            "description": "If true, deep check is performed. If missing, true is assumed.",
            "required": false,
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The code will contain 1 if the email is valid, 2 if the email address is invalid, 3 if the domain is invalid, 4 if the user does not exist, 5 for inconclusive because the target server is not listening or has greylisted your IP address",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/email/status": {
      "get": {
        "tags": [
          "Confirms the delivery status of an email"
        ],
        "summary": "Confirms the delivery status of an email",
        "description": "Confirms the delivery status of an email",
        "operationId": "status",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "re",
            "in": "query",
            "description": "Recipient's Email address",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "se",
            "in": "query",
            "description": "Sender's Email address",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "pid",
            "in": "query",
            "description": "Profile ID. If missing default profile is assumed",
            "required": false,
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "An array of EmailStatus objects",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EmailStatusArray"
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/domain/list": {
      "get": {
        "tags": [
          "List Domains"
        ],
        "summary": "Lists available domains in the system",
        "description": "Lists available domains in the system",
        "operationId": "list-domains",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns a list of local domains",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DomainList"
                },
                "examples": {
                  "Domain names": {
                    "value": "{\n    \"code\": 200,\n    \"description\": \"Total domains: 4\",\n    \"domains\": [\n        {\n            \"forward-to\": \"10.11.12.228:2255\",\n            \"domain\": \"xyz.com\"\n        },\n        {\n            \"forward-to\": \"10.11.12.228:2255\",\n            \"domain\": \"migtwo.com\"\n        },\n        {\n            \"forward-to\": \"10.11.12.228:2255\",\n            \"domain\": \"migthree.com\"\n        },\n        {\n            \"forward-to\": \"10.11.12.228:2255\",\n            \"domain\": \"example.com\"\n        }\n    ]\n}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/send": {
      "post": {
        "tags": [
          "Send Email"
        ],
        "summary": "Send an email",
        "description": "Send an email using Xeams API",
        "operationId": "sendEmail",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Email"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Email received and either sent or queued",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect. The following is a list of possible\ncodes.\n\n103 - JSON input has a syntax error\n\n105 - Unable to create a MIME message based on the input. Refer to the message for details\n\n107 - Invalid email address\n\n108 - Invalid domain or no MX record was found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/domain/add": {
      "post": {
        "tags": [
          "Add Domain"
        ],
        "summary": "Add a new domain",
        "description": "Adds a new domain",
        "operationId": "addNewDomain",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddDomain"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Domain added successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/domain/update": {
      "post": {
        "tags": [
          "Update Domain"
        ],
        "summary": "Update an existing domain",
        "description": "Update the forward-to value for an existing domain",
        "operationId": "updateDomain",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddDomain"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Domain updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/domain/remove": {
      "post": {
        "tags": [
          "Remove Domain"
        ],
        "summary": "Remove a domain",
        "description": "Remove a domain and deletes every users belonging to it",
        "operationId": "removeDomain",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocalDomain"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Domain removed successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/user/add": {
      "post": {
        "tags": [
          "Add User"
        ],
        "summary": "Add a new user",
        "description": "Adds a new user",
        "operationId": "addNewUser",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddUser"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "User added successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/user/remove": {
      "post": {
        "tags": [
          "Remove User"
        ],
        "summary": "Removes an existing user",
        "description": "Removes a user",
        "operationId": "removeUser",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LocalUser"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "User removed successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/user/list": {
      "get": {
        "tags": [
          "List Users"
        ],
        "summary": "Lists available users in the system",
        "description": "Lists available users in the system",
        "operationId": "list-users",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "dn",
            "in": "query",
            "description": "Domain name. If missing every user is returned. Multiple domains are seperated by comma",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns a list of users for a given domain or every user if domain is missing",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserList"
                },
                "examples": {
                  "List of users": {
                    "value": "{\"code\":200,\"description\":\"Total domains: 2\",\"users\":[{\"associations\":\"john.baker@example.com\",\"disk-quota\":\"-1\",\"disk-usage\":0,\"report-time\":\"0|480|1020|-1|-1\",\"login\":\"john.baker@example.com\"},{\"associations\":\"jane.baker@example.com\",\"disk-quota\":\"-1\",\"disk-usage\":0,\"report-time\":\"0|480|1020|-1|-1\",\"login\":\"jane.baker@example.com\"}]}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/dlist/list": {
      "get": {
        "tags": [
          "List Distribution List"
        ],
        "summary": "Lists available distribution lists in the system",
        "description": "Returns available distribution lists in the system",
        "operationId": "list-dlist",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ln",
            "in": "query",
            "description": "Filter string containing list name. If missing, every list is returned",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returns a list of users for a given domain or every user if domain is missing",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DList"
                },
                "examples": {
                  "List of users": {
                    "value": "{\"code\":200,\"description\":\"Total domains: 2\",\"users\":[{\"associations\":\"john.baker@example.com\",\"disk-quota\":\"-1\",\"disk-usage\":0,\"report-time\":\"0|480|1020|-1|-1\",\"login\":\"john.baker@example.com\"},{\"associations\":\"jane.baker@example.com\",\"disk-quota\":\"-1\",\"disk-usage\":0,\"report-time\":\"0|480|1020|-1|-1\",\"login\":\"jane.baker@example.com\"}]}"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    },
    "/dlist/add": {
      "post": {
        "tags": [
          "Add Distribution List"
        ],
        "summary": "Add or modify distribution list",
        "description": "Add or modify distribution list. A list is modified if it already exists.",
        "operationId": "addModifyDList",
        "parameters": [
          {
            "name": "auth-key",
            "in": "query",
            "description": "API key for Xeams",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "secret",
            "in": "query",
            "description": "Secret value",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddDList"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "DList added or modified successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad request, which occurs when input is incorrect",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          },
          "401": {
            "description": "Invalid key or secret",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiResponse"
                }
              }
            }
          }
        },
        "security": [
          {
            "BasicAuth": []
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "Email": {
        "required": [
          "body",
          "from-email",
          "subject",
          "to"
        ],
        "type": "object",
        "properties": {
          "from-email": {
            "type": "string",
            "format": "email",
            "example": "john.doe@example.com"
          },
          "from-name": {
            "type": "string",
            "example": "John Doe"
          },
          "recipient-fn": {
            "type": "string",
            "description": "Recipient's first name",
            "example": "John"
          },
          "recipient-ln": {
            "type": "string",
            "description": "Recipient's last name",
            "example": "Doe"
          },
          "to": {
            "type": "string",
            "format": "email",
            "example": "jane.doe@example.com"
          },
          "cc": {
            "type": "string",
            "format": "email",
            "example": "jenny.doe@example.com"
          },
          "bcc": {
            "type": "string",
            "format": "email",
            "example": "jason.doe@example.com"
          },
          "subject": {
            "type": "string",
            "example": "Hello World"
          },
          "body": {
            "type": "string",
            "example": "This is a simple message"
          },
          "template-id": {
            "type": "integer",
            "description": "Template ID. If missing, no template will be used.",
            "format": "int32"
          },
          "is_html": {
            "type": "boolean"
          },
          "custom-headers": {
            "type": "array",
            "items": {
              "type": "string",
              "example": "{\"X-Reference\":123,\"X-ReplyID\":456}"
            }
          },
          "attachments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Attachment"
            }
          }
        },
        "xml": {
          "name": "email"
        }
      },
      "LocalUser": {
        "type": "object",
        "properties": {
          "login": {
            "type": "string",
            "format": "email"
          }
        }
      },
      "AddUser": {
        "required": [
          "def-pwd",
          "login"
        ],
        "type": "object",
        "properties": {
          "login": {
            "type": "string",
            "format": "email"
          },
          "def-pwd": {
            "type": "string"
          },
          "associated-emails": {
            "type": "string",
            "description": "Comma separated email addresses"
          }
        }
      },
      "AddDomain": {
        "required": [
          "domain",
          "forward-to"
        ],
        "type": "object",
        "properties": {
          "domain": {
            "type": "string"
          },
          "forward-to": {
            "type": "string"
          }
        }
      },
      "AddDList": {
        "required": [
          "dlist-address",
          "forward-to"
        ],
        "type": "object",
        "properties": {
          "dlist-address": {
            "type": "string"
          },
          "forward-to": {
            "type": "string"
          }
        }
      },
      "LocalDomain": {
        "type": "object",
        "properties": {
          "domain": {
            "type": "string"
          }
        }
      },
      "Attachment": {
        "required": [
          "content",
          "name"
        ],
        "type": "object",
        "properties": {
          "content": {
            "type": "string",
            "description": "File content must be encoded with base64",
            "format": "byte",
            "example": "ABC232CSDE2132ASD..."
          },
          "name": {
            "type": "string",
            "example": "sample.png"
          },
          "type": {
            "type": "string",
            "example": "image/png"
          },
          "inline": {
            "type": "boolean",
            "description": "This is true if image is part of the HTML content"
          },
          "content-id": {
            "type": "string",
            "example": "2ad23sdssa"
          }
        },
        "xml": {
          "name": "email"
        }
      },
      "ApiResponse": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "description": {
            "type": "string"
          }
        }
      },
      "DomainList": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "description": {
            "type": "string"
          },
          "domain": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DomainList_domain"
            }
          }
        }
      },
      "UserList": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "description": {
            "type": "string"
          },
          "domains": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserList_domains"
            }
          }
        }
      },
      "DList": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "description": {
            "type": "string"
          },
          "domains": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DList_domains"
            }
          }
        }
      },
      "EmailStatusArray": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "description": "An array of EmailStatus",
            "items": {
              "$ref": "#/components/schemas/EmailStatus"
            }
          }
        }
      },
      "EmailStatus": {
        "type": "object",
        "properties": {
          "status": {
            "type": "integer",
            "description": "Holds the status code. 1 for delivered, 2 for failed, 3 for not found, 4 for quarantined, 5 for queued, 6 for received and 0 for processing"
          },
          "statusStr": {
            "type": "string",
            "description": "Description of status in English"
          },
          "receivedOn": {
            "type": "number",
            "description": "Time in milliseconds when the message was received by Xeams"
          },
          "sentOn": {
            "type": "number",
            "description": "Time in milliseconds since epoch when message was sent"
          },
          "subject": {
            "type": "string",
            "description": "Subject of the message"
          },
          "senderIP": {
            "type": "string",
            "description": "IP address where email was received"
          },
          "recipientIP": {
            "type": "string",
            "description": "IP address of the recipient server"
          },
          "inhoundEncryption": {
            "type": "boolean",
            "description": "True if encryption was used when email was received"
          },
          "outboundEncryption": {
            "type": "boolean",
            "description": "True if encryption was used when sending out"
          }
        }
      },
      "DomainList_domain": {
        "type": "object",
        "properties": {
          "forward-to": {
            "type": "string"
          },
          "domain": {
            "type": "string"
          }
        }
      },
      "UserList_domains": {
        "type": "object",
        "properties": {
          "associations": {
            "type": "string",
            "description": "Comma seperated email addresses"
          },
          "disk-quota": {
            "type": "string"
          },
          "disk-usage": {
            "type": "integer",
            "format": "int64"
          },
          "report-time": {
            "type": "string"
          },
          "login": {
            "type": "string"
          }
        }
      },
      "DList_domains": {
        "type": "object",
        "properties": {
          "emails": {
            "type": "string",
            "description": "Comma seperated email addresses in this list"
          }
        }
      }
    },
    "requestBodies": {
      "Send": {
        "description": "Pet object that needs to be added to the store",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Email"
            }
          }
        }
      }
    },
    "securitySchemes": {
      "BasicAuth": {
        "type": "http",
        "scheme": "basic"
      }
    }
  }
}