<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 1999-2022. Plesk International GmbH. All rights reserved. -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="common.xsd"/>
	<xs:include schemaLocation="plesk_domain.xsd"/>
	<xs:complexType name="infoType">
		<xs:sequence>
			<xs:element name="bits">
				<xs:simpleType>
					<xs:restriction base="xs:int">
						<xs:enumeration value="1024"/>
						<xs:enumeration value="2048"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="country" type="xs:string"/>
			<xs:element name="state"/>
			<xs:element name="location" type="xs:string"/>
			<xs:element name="company" type="xs:string"/>
			<xs:element name="dept" type="xs:string" minOccurs="0"/>
			<xs:element name="email" type="xs:string"/>
			<xs:element name="name" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CertificateActionRequest">
		<xs:choice maxOccurs="unbounded">
			<xs:element name="install" type="certificateType"/>
            <xs:element name="update" type="certificateType"/>
			<xs:element name="remove">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="filter">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="name" type="string" maxOccurs="unbounded"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:choice>
							<xs:element name="webspace" type="domainName"/>
							<xs:element name="site" type="domainName"/>
							<xs:element name="admin"/>
						</xs:choice>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="generate">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="info" type="infoType"/>
						<xs:element name="PVT" type="xs:string" minOccurs="0"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="get-pool">
				<xs:complexType>
					<xs:choice>
						<xs:element name="filter" type="certificateFilterType"/>
						<xs:element name="admin">
							<xs:annotation>
								<xs:documentation>Get list of certificates from server pool</xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:choice>
				</xs:complexType>
			</xs:element>
		</xs:choice>
	</xs:complexType>
    <xs:complexType name="certificateType">
        <xs:sequence>
            <xs:element name="name" type="xs:string"/>
            <xs:choice>
                <xs:element name="webspace" type="domainName"/>
                <xs:element name="site" type="domainName"/>
                <xs:element name="admin"/>
            </xs:choice>
            <xs:element name="content">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="csr" type="xs:string"/>
                        <xs:element name="pvt" type="xs:string"/>
                        <xs:element name="cert" type="xs:string" minOccurs="0"/>
                        <xs:element name="ca" type="xs:string" minOccurs="0"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="ip_address" type="ip_address" minOccurs="0">
                <xs:annotation>
                    <xs:documentation>IP address value</xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
	<xs:complexType name="certificateFilterType">
		<xs:choice>
			<xs:element name="domain-id" type="id_type" minOccurs="1" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Could be webspace id or site id</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="domain-name" type="string" minOccurs="1" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Could be webspace name or site name</xs:documentation>
				</xs:annotation>			
			</xs:element>
			<xs:element name="domain-guid" type="string" minOccurs="1" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Could be webspace guid or site guid</xs:documentation>
				</xs:annotation>			
			</xs:element>
		</xs:choice>
	</xs:complexType>
</xs:schema>
