2 files changed, 35 insertions, 0 deletions
diff --git a/scripts/ap/get.js b/scripts/ap/get.js
new file mode 100644
index 00000000..ab235427
--- /dev/null
+++ b/scripts/ap/get.js
@@ -0,0 +1,34 @@
+const nodeFetch = require("node-fetch");
+
+const fetch = (url, opts) =>
+ nodeFetch(url, {
+ ...opts,
+ headers: {
+ Accept: "application/activity+json",
+ ...(opts?.headers || {}),
+ },
+ }).then((x) => x.json());
+
+const webfinger = async (domain, user) => {
+ const query = `https://${domain}/.well-known/webfinger?resource=@${user}@${domain}`;
+ const json = await fetch(query);
+ return json.links.find((x) => x.rel == "self").href;
+};
+
+(async () => {
+ const userLocation = await webfinger(
+ "chat.understars.dev",
+ "1140599542186631381",
+ );
+ console.log(userLocation);
+
+ const user = await fetch(userLocation);
+
+ const outbox = await fetch(user.outbox);
+
+ const firstPage = await fetch(outbox.first);
+
+ const mostRecent = firstPage.orderedItems[0];
+
+ console.log(mostRecent);
+})();
diff --git a/scripts/schema.js b/scripts/schema.js
index ff3280ac..74ef908c 100644
--- a/scripts/schema.js
+++ b/scripts/schema.js
@@ -72,6 +72,7 @@ function main() {
(x.endsWith("Schema") ||
x.endsWith("Response") ||
x.startsWith("API")) &&
+ !x.startsWith("AP") &&
!Excluded.includes(x)
);
});
|