Internet Engineering Task Force J.Y,. Yee, Ed. Internet-Draft J.G,. Galvin Intended status: Informational Afilias Expires: 9 September 2020 8 March 2020 Simple Registration Reporting draft-yee-regext-simple-registration-reporting-00 Abstract Domain name registries and registrars report to each other by sharing bulk information through files. This document creates two IANA registries to create a standard reporting mechanism between domain name registries and registrars. The first IANA registry lists standard data elements and their syntax for inclusion in the files. The second IANA registry lists standard reports based on the standard data elements. Each report is a file formatted as a CSV file. The advantage of this reporting mechanism is that reports, each file, can be imported by recipients without any prior knowledge of their contents, although reporting is enhanced with a minimum of knowledge about the files. The mechanism for the transmission and reception of the files is a matter of local policy. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on 9 September 2020. Copyright Notice Copyright (c) 2020 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/ Yee & Galvin Expires 9 September 2020 [Page 1] Internet-Draft Abbreviated Title March 2020 license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 4 2. Data Element Specification . . . . . . . . . . . . . . . . . 4 2.1. General Information Fields . . . . . . . . . . . . . . . 4 2.1.1. TLD . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1.2. Server_TRID . . . . . . . . . . . . . . . . . . . . . 5 2.1.3. Domain . . . . . . . . . . . . . . . . . . . . . . . 5 2.1.4. Transaction_Type . . . . . . . . . . . . . . . . . . 5 2.1.5. Ojbect_Type . . . . . . . . . . . . . . . . . . . . . 5 2.1.6. Time . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1.7. Term . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1.8. Fee . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1.9. Currency . . . . . . . . . . . . . . . . . . . . . . 6 2.1.10. Status . . . . . . . . . . . . . . . . . . . . . . . 6 2.1.11. Registrar . . . . . . . . . . . . . . . . . . . . . . 6 2.1.12. Period . . . . . . . . . . . . . . . . . . . . . . . 6 2.1.13. Description . . . . . . . . . . . . . . . . . . . . . 6 2.2. Domain Price Fields . . . . . . . . . . . . . . . . . . . 6 2.2.1. Domain Create . . . . . . . . . . . . . . . . . . . . 6 2.2.2. Domain Renew . . . . . . . . . . . . . . . . . . . . 6 2.2.3. Domain Transfer . . . . . . . . . . . . . . . . . . . 6 2.2.4. Domain Restore . . . . . . . . . . . . . . . . . . . 6 2.3. Timestamp Fields . . . . . . . . . . . . . . . . . . . . 7 2.3.1. Start_date . . . . . . . . . . . . . . . . . . . . . 7 2.3.2. Deleted_date . . . . . . . . . . . . . . . . . . . . 7 2.3.3. RGP_date . . . . . . . . . . . . . . . . . . . . . . 7 2.3.4. Purge_date . . . . . . . . . . . . . . . . . . . . . 7 2.3.5. Updated_date . . . . . . . . . . . . . . . . . . . . 7 2.3.6. Create_date . . . . . . . . . . . . . . . . . . . . . 7 2.3.7. Expiry_date . . . . . . . . . . . . . . . . . . . . . 7 2.4. Registration Information Fields . . . . . . . . . . . . . 8 2.4.1. Registrar_ID . . . . . . . . . . . . . . . . . . . . 8 2.4.2. Registrant_ID . . . . . . . . . . . . . . . . . . . . 8 2.4.3. DNSSEC . . . . . . . . . . . . . . . . . . . . . . . 8 2.4.4. Contact_ID . . . . . . . . . . . . . . . . . . . . . 8 2.4.5. Contact_Type . . . . . . . . . . . . . . . . . . . . 8 2.4.6. Contact_Name . . . . . . . . . . . . . . . . . . . . 8 2.4.7. INUSE . . . . . . . . . . . . . . . . . . . . . . . . 8 2.4.8. Nameserver_Host . . . . . . . . . . . . . . . . . . . 8 Yee & Galvin Expires 9 September 2020 [Page 2] Internet-Draft Abbreviated Title March 2020 2.4.9. Nameserver_IP . . . . . . . . . . . . . . . . . . . . 9 3. Report Definition Specification . . . . . . . . . . . . . . . 9 3.1. Transaction Report . . . . . . . . . . . . . . . . . . . 9 3.2. Premium Name Report . . . . . . . . . . . . . . . . . . . 10 3.3. Domain RGP Report . . . . . . . . . . . . . . . . . . . . 11 3.4. Reserved Domain Report . . . . . . . . . . . . . . . . . 11 3.5. Domain Inventory Report . . . . . . . . . . . . . . . . . 11 3.6. Contact Inventory Report . . . . . . . . . . . . . . . . 12 3.7. Host Inventory Report . . . . . . . . . . . . . . . . . . 12 4. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 13 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 5.1. Field Definition . . . . . . . . . . . . . . . . . . . . 13 5.2. Report Definition . . . . . . . . . . . . . . . . . . . . 13 6. Security Considerations . . . . . . . . . . . . . . . . . . . 14 7. Internationalization Considerations . . . . . . . . . . . . . 14 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 14 8.1. Normative References . . . . . . . . . . . . . . . . . . 14 8.2. Informative References . . . . . . . . . . . . . . . . . 15 Appendix A. File Naming Convention . . . . . . . . . . . . . . . 15 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 1. Introduction Currently, domain name registry operators (the producer) create and set their own domain name registration reports for use by their registrars (the consumer). Among the distinctions that vary by producers is the syntax of the data provided, e.g., date formats, and the format of the collection of the data provided, e.g., the report may be a CSV file that tends to allow for straightforward importation or a PDF file that can be problematic to import. In addition, although there are a number of best practice reports that have evolved, these are not currently documented as such, which results in a fair amount of customization on the part of the consumers to import data. This document standardizes the name and syntax of the data elements to be used across all existing domain name registration reports and creates an IANA registry of them to facilitate their evolution, including adding additional data elements as needed. In addition, a known set of existing standard reports using the aforementioned data elements is specified in another IANA registry to facilitate the evolution of the reports and adding additional report definitions as needed. Each report definition MUST use the data elements defined here, including all future reports. Future reports and future data elements may be specified in their own individual documents, updating the IANA registries as needed. Yee & Galvin Expires 9 September 2020 [Page 3] Internet-Draft Abbreviated Title March 2020 1.1. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. 2. Data Element Specification Data elements are grouped into categories for convenience. There is no other significance to the groupings. Each data element conceptually represents the column heading in a printed report. It is a single unit of information that can be passed from the producer to the consumer. The primary purposes of the IANA registry of data elements are to ensure that each data element is assigned a unique name and that the syntax of each data element is specified. The name of the data element MUST be unique and this characteristic MUST be enforced by registry. The name is used in the report definition (in the next section) to alert the consumer as to what to expect in the file and how to import the data element. The field names MUST NOT contain any whitespace and MAY use US-ASCII underscores (_) as a separator. The US-ASCII comma (,) and backslash (\) are special and MUST NOT appear in any field name or data element value. In order to include either character it must be quoted as follows. * COMMA - to insert a comma precede it with a backslash thus (\,). * BACKSLASH - to insert a backslash precede it with a backslash thus (\\). The syntax of the data element MAY be whatever is appropriate for the information to be passed. In most cases it will be imported from other standard specifications where the data element is already defined for use in other protocols. In all cases the syntax restriction mentioned above MUST be respected. The subsections below comprise an initial list of known data elements commonly being used between producers and consumers as of the date of publication of this document. The title of the subsection is the field name for the data element. 2.1. General Information Fields Yee & Galvin Expires 9 September 2020 [Page 4] Internet-Draft Abbreviated Title March 2020 2.1.1. TLD The string of the top level domain involved that SHOULD be in A-LABEL format. 2.1.2. Server_TRID The transaction identifier issued by EPP Server. The format MUST conform to "type:trIDStringType" as specified in RFC 5730 [RFC5730]. 2.1.3. Domain The domain object in EPP RFC 5731 [RFC5731] that contains the full domain name that SHOULD be in A-Label format. 2.1.4. Transaction_Type The type of transform action made to the domain object (CREATE, DELETE, UPDATE, TRANSFER, RENEW) as specified in RFC 5730 [RFC5730] Section 2.9.3 2.1.5. Ojbect_Type The object type involved in the report. In the EPP environment, an object could be domain RFC 5731 [RFC5731], contact RFC 5733 [RFC5733], or host RFC 5732 [RFC5732]. 2.1.6. Time The timestamp of the transaction recorded in the system. The date and time format follows the "type=dateTime" specification as defined in RFC 5731 [RFC5731]. 2.1.7. Term The number of unit added to the domain registration period in "domain:period" RFC 5731 [RFC5731] in create command or renew command. If there's no "domain:period", it should take the default value set by the registry. 2.1.8. Fee The amount of money charged or returned (shown as negative value) to the registrar. The numeric format MUST conform to the currency specified below in Section 2.1.9. The format must conform to "balanceType" as defined in [draft-ietf-regext-epp-fees] Yee & Galvin Expires 9 September 2020 [Page 5] Internet-Draft Abbreviated Title March 2020 2.1.9. Currency The currency used in the money charged as documented above in Section 2.1.18. It is recommended for currency code to follow ISO 4217 [ISO4217]standard. 2.1.10. Status The status of domain object. It MUST be one of the values specified in RFC 5731 [RFC5731] Section 2.3. 2.1.11. Registrar The name of the registrar 2.1.12. Period The type of time (year, month) in 'Term' described above in Section 2.1.7 2.1.13. Description Additional information regarding the current entry in the report. It is provided by the producer and its actual value is a matter of local policy. 2.2. Domain Price Fields 2.2.1. Domain Create The fee charged to create the domain. The format must conform to "balanceType" as defined in [draft-ietf-regext-epp-fees] 2.2.2. Domain Renew The fee charged to renew the domain. The format must conform to "balanceType" as defined in [draft-ietf-regext-epp-fees] 2.2.3. Domain Transfer The fee charged to transfer the domain. The format must conform to "balanceType" as defined in [draft-ietf-regext-epp-fees] 2.2.4. Domain Restore The fee charged to restore the domain. The format must conform to "balanceType" as defined in [draft-ietf-regext-epp-fees] Yee & Galvin Expires 9 September 2020 [Page 6] Internet-Draft Abbreviated Title March 2020 2.3. Timestamp Fields 2.3.1. Start_date The timestamp of when the domain object becomes available. The date and time format follows the "type=dateTime" specification as defined in RFC 5731 [RFC5731]. 2.3.2. Deleted_date The timestamp of when the domain was deleted by the end user. The date and time format follows the "type=dateTime" specification as defined in RFC 5731 [RFC5731]. 2.3.3. RGP_date The timestamp of when the domain will complete its redemption grace period. In BestPractice.domains, this is referred to as 'expired'. The date and time format follows the "type=dateTime" specification as defined in RFC 5731 [RFC5731]. 2.3.4. Purge_date The timestamp of when the domain will be purged and become available again. In BestPractice.domains, this is referred to as 'purged'. The date and time format follows the "type=dateTime" specification as defined in RFC 5731 [RFC5731]. 2.3.5. Updated_date The timestamp of the last time the domain object was updated. In BestPractice.domains, this is referred to as 'Updated'. The date and time format follows the "type=dateTime" specification as defined in RFC 5731 [RFC5731]. 2.3.6. Create_date The timestamp of the domain object was allocated. The date and time format follows the "type=dateTime" specification as defined in RFC 5731 [RFC5731]. 2.3.7. Expiry_date The timestamp of the domain object will expire. The date and time format follows the "type=dateTime" specification as defined in RFC 5731 [RFC5731]. Yee & Galvin Expires 9 September 2020 [Page 7] Internet-Draft Abbreviated Title March 2020 2.4. Registration Information Fields 2.4.1. Registrar_ID The identifier assigned to the registrar. If the registrar is accredited under ICANN, it MUST be the registrar's IANA ID. Otherwise it is a value known between the producer and the consumer. 2.4.2. Registrant_ID The identifier assigned to the contact object that is associated as registrant of the domain name that MUST conform to "clIDType" specified in RFC 5730 [RFC5730]. 2.4.3. DNSSEC The value MUST be either 'YES' or 'NO' to indicate whether the domain is DNSSEC signed. 2.4.4. Contact_ID The identifier of the contact object. 2.4.5. Contact_Type The value MUST be one of value as defined by "contactAttrType" in RFC 5731 [RFC5731]. 2.4.6. Contact_Name The name of the contact object. Usually it is the name of an individual or an organization as described in RFC 5733 [RFC5733] Section 2.3 2.4.7. INUSE MUST be either "YES" or "NO" to indicate whether the contact object is associated with a domain object. 2.4.8. Nameserver_Host The full domain name of the host object. The name MUST be in A-Label format. Yee & Galvin Expires 9 September 2020 [Page 8] Internet-Draft Abbreviated Title March 2020 2.4.9. Nameserver_IP The IP address of the host object. The syntax of the IPv4 address MUST conform to RFC 791 [RFC0791]. The syntax of the IPv6 address MUST conform to RFC 4291 [RFC4291]. 3. Report Definition Specification Each report specification conceptually represents a file of comma separated values (commonly called a CSV file) where the values are selected from the data elements specified above. The first row of the file is a comma separated list of field names as specified in the data element registry. The remaining rows of the file are the unordered sets of data elements, one set per row, where each row is one transaction in the report. Each data element conceptually represents the column heading in a printed report. The first row represents the column headings and each succeeding row represents a transaction of the report. A consumer MUST be able to receive data elements that are not recognized and skip them accordingly, both in the header row and in the transaction rows. A report is specified in the report registry with two pieces of information. First is the name of the report. This can be whatever is appropriate as defined by the producer of the report. The name of the report MUST be unique and this characteristic MUST be enforced by registry. Second is the ordered list of field names of what is included in the report. The field names MUST be listed in the data element registry specified above. The field names and the data MUST appear in the report in the order listed in the report registry. The subsections below comprise an initial list of standard reports commonly being used between producers and consumers as of the data of publication of this document. The title of the subsection is the report name. 3.1. Transaction Report +------------------+------------------------+ | Field | Reference | +==================+========================+ | TLD | RFC XXXX Section 2.1.1 | +------------------+------------------------+ | Server_TRID | Section 2.1.2 | Yee & Galvin Expires 9 September 2020 [Page 9] Internet-Draft Abbreviated Title March 2020 +------------------+------------------------+ | Domain | Section 2.1.3 | +------------------+------------------------+ | Registrar_ID | Section 2.4.1 | +------------------+------------------------+ | Registrar | Section 2.1.11 | +------------------+------------------------+ | Transaction_Type | Section 2.1.4 | +------------------+------------------------+ | Period | Section 2.1.12 | +------------------+------------------------+ | Term | Section 2.1.7 | +------------------+------------------------+ | Fee | Section 2.1.8 | +------------------+------------------------+ | Currency | Section 2.1.9 | +------------------+------------------------+ | Description | Section 2.1.13 | +------------------+------------------------+ Table 1: Transaction Report Definition Table 3.2. Premium Name Report +-----------------+------------------------+ | Field | Reference | +=================+========================+ | TLD | RFC XXXX Section 2.1.1 | +-----------------+------------------------+ | Domain | Section 2.1.3 | +-----------------+------------------------+ | Status | Section 2.1.10 | +-----------------+------------------------+ | Description | Section 2.1.13 | +-----------------+------------------------+ | Currency | Section 2.1.9 | +-----------------+------------------------+ | Domain_Create | Section 2.2.1 | +-----------------+------------------------+ | Domain_Renew | Section 2.2.2 | +-----------------+------------------------+ | Domain_Transfer | Section 2.2.3 | +-----------------+------------------------+ | Domain_Restore | Section 2.2.4 | +-----------------+------------------------+ | Start_Date | Section 2.3.1 | +-----------------+------------------------+ Yee & Galvin Expires 9 September 2020 [Page 10] Internet-Draft Abbreviated Title March 2020 Table 2: Premium Name Report Definition Table 3.3. Domain RGP Report +--------------+------------------------+ | Field | Reference | +==============+========================+ | TLD | RFC XXXX Section 2.1.1 | +--------------+------------------------+ | Domain | Section 2.1.3 | +--------------+------------------------+ | Deleted_Date | Section 2.3.2 | +--------------+------------------------+ | RGP_Date | Section 2.3.3 | +--------------+------------------------+ | Purge_Date | Section 2.3.4 | +--------------+------------------------+ Table 3: Domain RGP Report Definition Table 3.4. Reserved Domain Report +--------+------------------------+ | Field | Reference | +========+========================+ | TLD | RFC XXXX Section 2.1.1 | +--------+------------------------+ | Domain | Section 2.1.3 | +--------+------------------------+ | Status | Section 2.1.10 | +--------+------------------------+ Table 4: Reserved Domain Report Definition Table 3.5. Domain Inventory Report +---------------+------------------------+ | Field | Reference | +===============+========================+ | TLD | RFC XXXX Section 2.1.1 | +---------------+------------------------+ | Domain | Section 2.1.3 | +---------------+------------------------+ | Updated_Date | Section 2.3.5 | +---------------+------------------------+ Yee & Galvin Expires 9 September 2020 [Page 11] Internet-Draft Abbreviated Title March 2020 | Registrar_ID | Section 2.4.1 | +---------------+------------------------+ | Create_Date | Section 2.3.6 | +---------------+------------------------+ | Expiry_Date | Section 2.3.7 | +---------------+------------------------+ | Registrant_ID | Section 2.4.2 | +---------------+------------------------+ | DNSSEC | Section 2.4.3 | +---------------+------------------------+ | Status | Section 2.1.10 | +---------------+------------------------+ Table 5: Domain Inventory Report Definition Table 3.6. Contact Inventory Report +--------------+---------------+ | Field | Reference | +==============+===============+ | Contact_ID | Section 2.4.4 | +--------------+---------------+ | TLD | Section 2.1.1 | +--------------+---------------+ | Domain | Section 2.1.3 | +--------------+---------------+ | Contact_Type | Section 2.4.5 | +--------------+---------------+ | Contact_Name | Section 2.4.6 | +--------------+---------------+ | Updated_Date | Section 2.3.5 | +--------------+---------------+ | INUSE | Section 2.4.7 | +--------------+---------------+ | Registrar_ID | Section 2.4.1 | +--------------+---------------+ Table 6: Contact Inventory Report Definition Table 3.7. Host Inventory Report +-----------------+---------------+ | Field | Reference | +=================+===============+ | TLD | Section 2.1.1 | +-----------------+---------------+ Yee & Galvin Expires 9 September 2020 [Page 12] Internet-Draft Abbreviated Title March 2020 | Nameserver_Host | Section 2.4.8 | +-----------------+---------------+ | Contact_Type | Section 2.4.9 | +-----------------+---------------+ Table 7: Host Inventory Report Definition Table 4. Acknowledgements TBD 5. IANA Considerations This document asks IANA to create two new registries. Each registry is a first-come first-served registry. DETAILS TO BE SPECIFIED AS THE DOCUMENT EVOLVES. 5.1. Field Definition The field name must be unique and case insensitive. PROPOSED FIELD NAME TABLE ENTRY. DETAILS TO BE SPECIFIED AS THE DOCUMENT EVOLVES. Name of field Enforced to be case-insensitive (if appropriate) unique Reference document defining the field, including section number Should be an RFC in many cases Registrant Will be IESG for initial entries Status MUST be active, inactive, unknown 5.2. Report Definition The report name must be unique and case insensitive. that any future submission must not have the same case insensitive match with prior entry. Name of report Name of report Yee & Galvin Expires 9 September 2020 [Page 13] Internet-Draft Abbreviated Title March 2020 Document Status Reference (including section number) Registrant: IESG TLD: any Status: active 6. Security Considerations TBD 7. Internationalization Considerations The character encoding for the file contents MUST use UTF-8. 8. References 8.1. Normative References [RFC0791] Postel, J., "Internet Protocol", September 1981, . [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing Architecture", February 2006, . [RFC5730] Hollenbeck, S., "Extensible Provisioning Protocol (EPP)", August 2009, . [RFC5731] Hollenbeck, S., "Extensible Provisioning Protocol (EPP) Domain Name Mapping", August 2009, . [RFC5732] Hollenbeck, S., "Extensible Provisioning Protocol (EPP) Host Mapping", August 2009, . [RFC5733] Hollenbeck, S., "Extensible Provisioning Protocol (EPP) Contact Mapping", August 2009, . Yee & Galvin Expires 9 September 2020 [Page 14] Internet-Draft Abbreviated Title March 2020 8.2. Informative References [ISO4217] International Organization for Standardization, "ISO 4217 Currency Codes", 2018, . [RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, DOI 10.17487/RFC2629, June 1999, . [RFC3552] Rescorla, E. and B. Korver, "Guidelines for Writing RFC Text on Security Considerations", BCP 72, RFC 3552, DOI 10.17487/RFC3552, July 2003, . [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", RFC 5226, DOI 10.17487/RFC5226, May 2008, . Appendix A. File Naming Convention TBD on file naming convention suggestion Authors' Addresses Joseph Yee (editor) Afilias Toronto Canada Email: jyee@afilias.info James Galvin Afilias Horsham, PA United States Email: jgalvin@afilias.info Yee & Galvin Expires 9 September 2020 [Page 15]