Anytype API Research: Share Your Use-Cases With Our Devs!

A function to print all Objects that appear in a View (or print extracted parts from these Objects)

In principle the same thing as in my post above.
But instead of playing embedded songs, I would like to have a feature to print specific parts from a group of Objects.

Example:
Printing letter envelopes from the Human Objects that show up in a Set’s or Collection’s View, using the information from the name and address relations.
30 Human Objects = 30 envelopes to print.

In this example the function needs to give us also some options how the printout should look exactly, but the main idea here is the feature to extract information from multiple Objects and to prepare them more flexible than a Set’s or Collection’s View.

API access would allow our team to create a custom ticket functionality through integration with our existing Azure database and webforms.

Control over all colors

It’s not so easy to manipulate specific colors with custom.CSS.
Also there are colors we aren’t able to manipulate at all. For example the hair lines in the Graph.

Better control over all colors was multiple times requested since long, but is still not to find on the roadmap.
Now I hope for the API …

If web sharing doesn’t happen for a while and we have the APIs beforehand : retrieve data from one or more objects for display on a web page.
(but if web sharing comes along, I’d rather avoid any development :grin:)
So :

  • retrieve an object according to its id
  • retrieve a list of objects (with their name and id) based on a search

and if Raycast existed on Windows, I’d ask for it too :disappointed_relieved:.

RSS integration would allow things like easy import from Instapaper and Omnivore. It would also allow integration with IMDB or GoodReads. Further, for me, I keep certain kinds of news stories and have RSS feeds that pull those stories. Would be awesome to be able to import that kind of data set.

N8N integration

Quickly capture infos

I already created a software using the API that allows me to quickly capture thoughts or literally anything to AnyType from CLI I just publised it here : GitHub - ebanDev/AnytypeCapture: This project aims to provide a quick and efficient way to capture any thought to your AnyType second brain. It leverages the protobuf GRPC API exposed by AnyType.

Hope that helps ! :slight_smile:

Another usecase: Export blocks of code to files. Example:

Hello, world
tag: example
path: helloworld.py

print("Hello, world!")

I’d like to be able to export all objects tagged “example” into the file specified at path.

Another thing that I’d love: location integration with open street map. What I have in mind is a new Relation-type, “Location”, which upon selection for an object would open a dialogue box that will search OSM and allow selection of said location’s position and the option to either put down the address or display a small map with a pinpoint.

I’m thinking of multiple use cases this could be relevant to:

  1. Directory-style objects: a personal guidebook for visitors to my city
  2. (Not my thing, but potentially useful) Real estate
  3. Travel diary
  4. Photos (ideally embed location data from picture file during import)

Since I can’t post another idea in a separate post, here’s already another that can enable Anytype serve as a social media Content Management System (CMS).

Like the previous idea that requires a Location-relation which doesn’t exist, this too requires a few other features that should be available down the line.

I’m imagining this workflow:

  1. Create an “Social media”-type object. The object has a template that includes an automatically-generated inline set with automatically-generated linked objects for the different social media outlets (e.g., Facebook, Instagram post & story, X, Telegram, Wordpress, Discord, etc.) This would allow both the tailoring of content for different platforms, being individual objects in Anytype, as well as status-tracking.
  2. When I’m in the object intended for any platform, I click a button to publish and it updates the relevant Status, also showing in the parent-object inline set. This is where the API comes in, and I would assume it would have to depend on community-developed plugin(s) given these things change all the time.
  3. Combined with Publish-to-web, this will allow having a website that is directly, seamlessly and efficiently linked to social media platforms. Any social media platform that allows links can have the post also contain a link back to the website. Such integration effectively liberates anybody who creates content from total dependency on social media platforms, while still being able to efficiently reach out to the public.

I’m not sure I was able to explain this in the clearest terms, but if anybody here has to manage more than one social media outlet and/or a website (especially for an organization or company) I imagine they can relate to the problem that Anytype can solve, perhaps in a similar-yet-different way via API integration.

While this is more “out there” (requiring multiple features yet-to-be-developed), I believe it can put Anytype in a unique position to offer a solution to one of the bigger problems with the way content is consumed online (ie, on social networks where nobody has full ownership or autonomy). Oh, the days I managed websites using Fogcreek CityDesk…

Another fantastic addition to Anytype, would be the ability to make it “linkable” via the app Hookmark. As of right now, I can link texts and relations using deeplink in anytype. Also, I can copy the link to an object from the 3-dot menu and hook it to another item via Hookmark. But the restriction is where I want to select a text in Anytype and hook it to something else. As of right now, it says that “there is nothing linkable in Anytype”.

** CLI tool for task management **

I use anytype to model jira dev tickets where I can store notes, tasks & snippets.
I would love to manage my progress from my terminal happy place similar to Task Warrior (Taskwarrior - 30-Second Tutorial - Taskwarrior)

To do this I imagine I would need to either:

  1. list all objects associated with given
    or
  2. find all checkbox blocks within a note

** CLI tool for quick capture **

Similar to the raycast requests, I’d like be able to quickly store all sorts of things from the terminal while working so i dont have to interrupt my thought process.

In particular I would like to append to a note and have the /commands actually be evaluated ‘/checkbox remove debug code before you push :)’
this is something i was unable to do when I was building a similar tool for Logseq.

Alternatively, If i can create objects through another call, I’d like to be able to append a ref to them to a note and have it actually displayed rather than just be plain text

Use Case

To commit mass changes throughout the notes

An Example

When I retroactively decide a format is changed and now all my daily notes for a year prior require a - between groups (e.g. 010123 to 01-01-23)

Why

It’s a small limitation of me moving to anytype completely. With markdown docs, I can use linux commands like grep and awk to edit files easily. Having API access to be able to do the same would allow for a lot of freedom in creating file syystem.

Sidenote

Love the app and what the team has done, wishing everyone the best. Thank you.

I would like to share some ideas which, in my view, may be useful for your company’s new note-taking software.

Twitter characteristic enhancement: Integration with various social media would be quite beneficial to my creative process. I would like to be able to create text-based notes on social media such as Twitter directly.

Expanding AI capabilities:

Enable users to implement OpenAI, Claude, and other APIs to create a wide range of multimedia within the notes.

It is desirable that AI features support large language models (such as Ollama) that have been installed locally.

Multimodal control: Provide text and voice commands for controlling API capabilities.

AI by default: Artificial intelligence is a computing technology that should be used in all possible ways within the software.

Getting Date objects CalDav and TaskDav compliant would be great, but at the moment seems a bit late: everything is a block architecture makes it hard to map existing user-defined properties to (vague, not really unified) standard.

Though, as a mean to make Anytype network subscription valuable, serving users tasks and calendars could be golden: not a singe PKM/collaborative app made it right.


PS:

Unfortunately, can’t follow rules: I see error if trying to make a separate reply:
An error occurred: No consecutive replies are allowed. Please edit your previous reply, or wait for someone to reply to you.

Good to have a parallel discussion on Github : )

With Omnivore (a read later app that supports following newsletters and RSS feeds) shutting down, I’m quickly looking to migrate to another service. The webclipper doesn’t seem to work on Linux, and it doesn’t exactly do what other webclippers (and Omnivore’s extension) do.

However, none of this would be so much of an issue to me if Anytype were to have an API so I can build exactly what I need. Just having the API endpoints so I can hook it up to n8n would already be great even without direct integration to n8n. Not only would I be able to save articles including the content into Anytype, but I could build an RSS/newsletter feed into Anytype as well.

So in short, with a public API, you could:

  • Save webpage content as an object
  • Convert RSS feed into objects
  • Convert emails into objects

Yes, definitely!
n8n.io, fair-code, 55k stars on Github as of today!
Massive welcoming community, AI empowering.
LG

I’d love to use the AnyType API in custom integrations (REST API or N8N, as mentioned above) — at a minimum, to create objects. Ideally, this could work:

  • Via pre-made templates: Get a unique API endpoint for a specific AnyType template to automate object creation. Use {{description_var}} vars or somethink like this to fill content in object
  • Unified REST API: A single API for all actions (a little more difficult for the user, but more promising).

For personal use, I’d develop a Telegram bot for myself (or integrate via N8N) to quickly add notes or forward messages to AnyType.

From a product perspective, REST API access (or even just N8N integration) would unlock massive automation potential, which would be incredible!

Read/Write to CalDAV/CardDav :

Write to CalDav
Ablitiy to output CalDAV feeds of Objects with Dates assigned to them (choose which date property is relevant). Feed would use view filters to determine what objects are in the feed (ie. each view of a Query or Type could output an associated CalDav link)

How this could work:

  1. Create Query or a Type that contains Objects with a date property.
  2. Optional: Create View(s) of this that filter these objects as required.
  3. For any view, create a CalDAV feed. User would need to configure (could do in similar way to setting up filters
  • Select if feed creates event or todo caldav object is made (ie is this a list of events or to do tasks) (another option is if we want both to be able to output, that the Type determines what is output and this can be configured at the Type level)
  • Selecting which Date property is to be mapped to CalDAVs dtstart property or due property as required
  • Selecting if an additional Date property is to be mapped to CalDAVs dtend property (if not then then dtstard = dtend by default
  1. Append the link of the Object to CalDAV’s summary property, clicking this in your caldenar app would then launch AnyType if installed on the device being used to view this calendar and open the relevant entry
  2. Each view created feeds creates a new calendar (perhaps user can specify this behaviour vs. if every feed should be appended into one master AnyType calendar.
  3. This feed can update dynamically if the values of the above property change
  4. If the relevant date properties have no data, no event or to do calDAV object is made until this is populated.

Use case example:
I have a “Project” Type in AnyType. I have set it up so there are Objects of the Type “Task” linked to this project which have a “Due Date” Property, and Objects of the Type “Event” linked to this project that have a “Start Date” and an “End Date” Property. I create a Query that brings in Objects linked to a particular Project, and then create a View that filters for ANY of Object Type Task OR Object Type Event. Then I am able create a CalDAV feed of this view which outputs ToDo entries for each Task Object where due = the value of the “Due Date” property and Event entries for each Event Object where dtstart = the value of the “Start Date” property etc. with the mapping specified by me.

This feed should update if new items are pulled into the query (ie. I create a new Task Object associated with this same Project Object), or an Object Date is edited.

Then in my Calendar application of choice, I can have a calendar for this project with Events and To Do tasks. I could repeat the above process but for my “Dinner Party” Type, and so have another feed associated with Events and To Do’s for all my Dinner Parties etc.

Read from CalDav
Ability to specify a CalDAV feed and for any new entry in that feed, an Object of a user specified Type is created.

How this could work:

  1. Provide CalDAV URL, specify whether Events or To Do should create an the Object of a specified Type.
  2. Map Date properties to the CalDAV properties dtstart etc. as well as any tags or other properties that should be set for any Object created for this calendar.
  3. Optional (complex and not sure if this could work) - potentially filter this feed in some way to only bring in events that meet certain criteria from the specified CalDAV feed.
  4. Object is created, and user can then take notes, pull into queries/collections, associate other objects like People, Projects etc. as required.

Use Case Example:
I link the feed for the Social Calendar CalDAV feed I host on my CalDAV server. I have then also set up a “Social Event” Type, it has an Event Date property. For every event in the CalDAV feed, it creates a new “Social Event” Object. I can then take notes for the event, link it to certain people entries etc.

CardDAV
Similar to the above, creates an Object of a user defined Type for each object in the CardDAV feed, so then the user can use AnyType as a CRM for their friends/family etc and allow for mapping fields in the CardDAV objects to specified property fields (eg. Phone, Email etc.) so these can be updated.

How on earth did I miss this?

Use cases:

  • Export into tabular formats (e.g. a grid view into Excel)

  • Im-/Export of all page contents including all relations into a user-defined format (files, one-big-JSON-chunk, …)

  • API-based creation of relations, tags, etc., (e.g. auto-assignment based on criteria: if city == "Bangkok" then country = "Thailand")

  • API-based creation of links, e.g. creating links to “previous” and “next” post in a chain of posts (journaling, web pages, …)

  • Export of pages as Web/HTML content (I know it seems to be planned, yet this might be a prime example for a plugin instead of a core functionality …)

  • Managing relations (e.g. having a “Categories” relation, and splitting this into a “Category” and “Subcategory” relation, including moving the appropriate values from “Categories” into “Catgory / Subcategory” and removing them from the original “Categories” relation)