Task IDs (Notion)
How to implement something like task IDs or card IDs in Notion, similar to Trello - Card-IDs (Trello)?
There seems to be no out-of-the-box solution, but there is a global ID for each entity.
Additionally, there are some workarounds that seem quite convoluted
Approaches to create task- od card IDs:
- Global IDs
- Notionthings.com: Create real IDs, from Global IDs + joined table
- Datestamp-IDs: Create IDs based on creation datestamps of objects
- API ?
Just add a field Task-ID or Card-ID and give it manually a number, when needed.
Rows of database tables do have a global ID. They can be retrieved with the function
id(). They are quite long and unwieldly, like cef53e69b99d426f8ad5a00bd9f6e5f3.
Solution here from Notionthings.com. I think it's as impressive as it may be convoluted.
How it seems to work:
- Create a database table used for ids only - id table
- Relate a database table that needs IDs to this table
- In the main table, have a rollup function that copies the
id()value from the id table
- Do some rollup stuff back-and-forth between these tables, that eventually count the number of commas that separate those ids
- Use that count +1 as the id for the next row.
Let's see if there are easier solutions.
Derive an ID from the Created time date/time stamp. E.g.:
toNumber((prop("Created time")) 1674667620000 1674667380000 Etc.
toNumber((prop("Created time"))/10000 167466762 167466738 Etc.
- Note that the timestamps are 9 character long
- Keep the last 4 digits Unix Epoch Time
slice(format(toNumber((prop("Created time"))/10000),5) 6762 6738 Etc.
- There is about 0.7% change that multiple cards get the same ID, when your project has 70 cards
- The sequence of IDs might cycle multiple times during the project, going from 9xx to 0yy, which might be confusing. To avoid this, you probably need 6 to 8 digits, which I personally think, is quite unwieldly
- You need all 4 digits at any time. It doesn't start e.g., at code '1'.
Conclusions: Too messy to my taste.
: A free extension to generate automatically incrementing ticket numbers. It can be run as-is or self-hosted
How it seems to work - When self-hosted :
- Deploy something within a free Terraform account - Middlewhere?
- Deploy the app within a free Google Cloud Platform account
- Enable NotionPlusID in your Notion database.
To use the 'SAAS' version:
- Just click on the website at the button to install it
- Grant permissions
- Create in a database table a field called PlusID, type number and it will become an ID-field
- The trick is, that the title has to be exactly PlusID (bit weird, in certain ways).
What I really like about NotionPlusID: It shows me, that you can make sophisticated stuff in a user-friendly way in Notion. I'm only less thrilled that you have to use a 'trick' to enable an ID column, that actually breaks the structure of the system: Functionality now depends on the name of the column.
I guess you can program it yourself through the API - In the end, that's what NotionPlusID does.