When I use the API to get the schema, what is returned contains a lot of Apps/Types/Fields that once existed, but have been deleted. Is there a way to ‘clean up’ the schema so that only current Apps/Types/Fields are returned when I query?
Hi!
Schema should contain actual information about types and fields. So if you deleted type or field then schema should not contains them.
What command do you use to get schema?
Can you give the example of deleted app/types/fields in your schema?
I used an action button with the following code:
const fibery = context.getService('fibery');
const e = await fibery.executeSingleCommand({
"command": "fibery.schema/query"
});
console.log(e);
and what I get out of the console seems to contain references to an app (called Production) that I deleted a while ago.
Unfortunately, the console log is too big to post in the message, so here’s a .txt file that I have shared via Onedrive that contains the output:
This is a screen grab of the workspace to show that no such (Production) app exists:
Interestingly, the schema output is actually different if I press the button logged in as a member account instead of as admin :-/
i need to check our logs, What is an account where this problem occurs?
Please, check Production app on the App screen!
You cannot see all apps in the left menu because some apps can have NoAccess configured for all users (even for admins).
Admin can sell all installed apps on the Apps screen and change their permissions if needed.
Oh, how silly of me. I misremembered and thought I had deleted the app, but as you correctly point out, it was just hidden from all users (no idea why I thought that would be a good idea!)
Thanks.