{"id":13527192,"url":"https://github.com/RIPE-NCC/whois","last_synced_at":"2025-04-01T09:31:18.967Z","repository":{"id":8349206,"uuid":"9909566","full_name":"RIPE-NCC/whois","owner":"RIPE-NCC","description":"RIPE Database whois code repository","archived":false,"fork":false,"pushed_at":"2025-03-28T12:40:48.000Z","size":28085,"stargazers_count":388,"open_issues_count":33,"forks_count":102,"subscribers_count":35,"default_branch":"master","last_synced_at":"2025-03-28T13:39:30.356Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RIPE-NCC.png","metadata":{"files":{"readme":"README.RDAP.md","changelog":"changes.txt","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-05-07T10:38:10.000Z","updated_at":"2025-03-27T13:05:45.000Z","dependencies_parsed_at":"2023-10-16T19:32:05.227Z","dependency_job_id":"a7fc5de4-98a4-4794-ae7c-445769c942a6","html_url":"https://github.com/RIPE-NCC/whois","commit_stats":{"total_commits":4543,"total_committers":48,"mean_commits":94.64583333333333,"dds":0.6315210213515299,"last_synced_commit":"a0c35b3fde651d1b4e952b884a37de5997285e96"},"previous_names":[],"tags_count":414,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RIPE-NCC%2Fwhois","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RIPE-NCC%2Fwhois/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RIPE-NCC%2Fwhois/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RIPE-NCC%2Fwhois/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RIPE-NCC","download_url":"https://codeload.github.com/RIPE-NCC/whois/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246616046,"owners_count":20806045,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T06:01:42.930Z","updated_at":"2025-04-01T09:31:13.958Z","avatar_url":"https://github.com/RIPE-NCC.png","language":"Java","funding_links":[],"categories":["Java","Java (504)","Network","网络编程"],"sub_categories":["Network Troubleshooting"],"readme":"RIPE NCC RDAP Implementation\n-----------------------------\nRead more about the RDAP specification in the RFC documents on the IETF site: https://datatracker.ietf.org/wg/weirds/documents/\n\nEntity Object Types\n-----------------------------------------------------\nEntity RDAP object can be either a PERSON, ROLE, MNTNER or ORGANISATION RPSL object.\n\nEntity object class represents individual persons, informal groups of people, organisations and related information.\n\nRefer to [rfc9083](https://datatracker.ietf.org/doc/rfc9083/) Section 5.1, \"The Entity Object Class\"\n\nMultiple country attributes are not returned\n--------------------------------------------\ninetnum and inet6num objects can contain multiple country attributes, but RDAP schema only allows a single value.\n\nThis implementation returns the first country attribute value, and any subsequent country attributes are redacted.\n\nMultiple language attributes are not returned\n---------------------------------------------\ninetnum, inet6num, and organisation can contain multiple language attributes, but RDAP schema only allows a single\nvalue.\n\nThis implementation returns the first language attribute value, and any subsequent country attributes are redacted.\n\nFlat AS Model\n----------------------------------------\nWe support the ASN flat model rather than the hierarchical model in our autnum queries. This means that for an autnum for which we have\nregistration authority but that has not been further delegated by us the service will respond with a Not Found.\n\nFor more information refer to https://bitbucket.org/nroecg/nro-rdap-profile/raw/v1/nro-rdap-profile.txt section\n6.1.2.3. Flat model\n\nCustom \"ZONE\" role for domain objects\n-------------------------------------\nFor zone-c attributes in domain objects, a custom \"ZONE\" role is used, which is not in the RDAP spec.\n\nRef. https://wiki.tools.ietf.org/html/rfc7483 section 10.2.4.\n\nOrganisation role \"registrant\" is ambiguous\n-------------------------------------------\nThe role \"registrant\" is used to identify organisation entities, however this is ambiguous as it's also used for mntner entities.\n\nEntity Primary Key can match multiple objects\n---------------------------------------------\nIf an entity primary key matches more than one object, a 500 Internal Server Error is returned.\n\nThis can not be easily fixed because the same key can be used in multiple different object types: mntner and\nperson/role. So it is not clear which object must be returned for a single object request.\n\nFor example: https://rdap.db.ripe.net/entity/KR4422-RIPE\n\nRelated Contact information is Filtered\n---------------------------------------\nAll related entities (such as a contact or registrant) have filtered contact information, i.e. the \"e-mail\" attribute\nvalue is not included. Filtered information does not count towards the daily query limit according to the\n[Acceptable Use Policy (AUP)](https://www.ripe.net/manage-ips-and-asns/db/support/documentation/ripe-database-acceptable-use-policy).\nThis was done to avoid blocking clients for inadvertently querying excessively for personal data.\n\nFor entity responses, the contact information is not filtered, i.e. the \"e-mail\" attribute is included.\nClients making entity requests must comply with the daily limit specified in the\n[Acceptable Use Policy (AUP)](https://www.ripe.net/manage-ips-and-asns/db/support/documentation/ripe-database-acceptable-use-policy).\n\nFor non-entity requests, e-mail addresses are filtered, except for the abuse contact which is always returned.\nAttributes related to whois update notification (\"notify\", \"ref-nfy\", \"upd-to\", \"mnt-nfy\") are filtered\nbecause they are not a general contact email.\n\nAbuse Contact information\n--------------------------\nAbuse contact information is not filtered because it is not considered personal information. However, this attribute's\n`type` does not conform to the [RDAP spec](https://bitbucket.org/nroecg/nro-rdap-profile/raw/v1/nro-rdap-profile.txt)\nsection 5.1.1, is not \"home\" or \"work\" as the RFC specifies. The `type` of this attribute is \"abuse\". In this\nparagraph `type` is considered as an element of the Jcard.\nFor example:\n````\n[\"adr\",\n    {\n        \"type\":\"home\",\n        \"label\":\"123 Maple Ave\\nSuite 90001\\nVancouver\\nBC\\n1239\\n\"\n    }\n]\n````\n\nEntity Search\n--------------------------\nEntity search on a handle is limited to returning 100 results, so response size and/or time is not excessive.\n\nThis is done as recommendation from the next RFC: https://datatracker.ietf.org/doc/rfc9083/ section 9. To conform with\nthis spec a notification is added when the output is truncated.\n\nDomain Search\n--------------------------\nDomain search is restricted to only search for reverse delegations, there are no forward domains in the RIPE database.\n\nDomain search is limited to returning 100 results, so response size and/or time is not excessive.\n\nThis is done as recommendation from the next RFC: https://datatracker.ietf.org/doc/rfc9083/ section 9. To conform with\nthis spec a notification is added when the output is truncated.\n\nNameserver queries always return Not Implemented\n-------------------------------------------------\nThe RIPE database doesn't contain any forward domain objects, consequently according to the RFC\nhttps://bitbucket.org/nroecg/nro-rdap-profile/raw/v1/nro-rdap-profile.txt section 6.3 \"501 Not Implemented\" will be\nreturned.\n\nOnly \"mnt-by:\" Maintainers are Listed as Registrants\n-----------------------------------------------------\nOnly maintainers referenced in \"mnt-by:\" attributes will be listed as Registrants in responses. It is not relevant\nto include the rest of the mntners as they do not maintain the current object, they are not registrant of the object.\n\nObjects with \"administrative\" status are not returned\n-----------------------------------------------------\nIf the prefix is either delegated but unallocated or only partially delegated to the RIPE region,\nthen a 404 is returned. An object with \"administrative\" status is never returned.\n\nCurrently, IANA allocations are not present in the RIPE database, but just out-of-region placeholders.\n\nRefer to [NRO RDAP](https://bitbucket.org/nroecg/nro-rdap-profile/raw/v1/nro-rdap-profile.txt) Profile section 4.5. \"Status\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FRIPE-NCC%2Fwhois","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FRIPE-NCC%2Fwhois","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FRIPE-NCC%2Fwhois/lists"}