Bug description

Long story short: I'd like to be able to read/modify uuid via API.

Right know we have uuid in databases only. Plus, exporter/importer API.

It makes sense to have this functionality in the general API. My use case is to have persistent identifier for each resource as id may change if you, say, recreate the resource, but you can always find it via uuid.

How to reproduce the bug

Expected: requests below should return uuid field. - GET http://localhost:8088/api/v1/database/?q={"columns": ["uuid"]} - GET http://localhost:8088/api/v1/dataset/?q={"columns": ["uuid"]} - GET http://localhost:8088/api/v1/chart/?q={"columns": ["uuid"]} - GET http://localhost:8088/api/v1/dashboard/?q={"columns": ["uuid"]}

Actual result: Only database works. The same for PUT/POST requests.

Screenshots/recordings

No response

Superset version

4.0.1

Python version

3.11

Node version

16

Browser

Firefox

Additional context

No response

Checklist

  • [x] I have searched Superset docs and Slack and didn't find a solution to my problem.
  • [x] I have searched the GitHub issue tracker and didn't find a similar bug report.
  • [x] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.

Comment From: dankor

My PR.

Comment From: rusackas

Looks like the PR for this still needs some love and a rebase. Just saying that here so this issue doesn't turn up as stale, but it may be closed in time if the PR doesn't get the love it needs :)

Comment From: rusackas

I think quite a few of these have already transpired on master and will be in 6.0 if not 5.0. I'll go ahead and close this out, but if we missed anything I'm happy to reopen this and move it to an "Ideas" Discussion for sure.