{"id":"internals-app","name":"Fibery Internals","version":"1.0.0","type":"crunch","website":"https://fibery.io","description":"Surfaces your workspace's own configuration — spaces, databases, fields, views, folders, custom emojis, users, automations and integrations — as Fibery databases you can query, report on and drive from automations.","authentication":[{"id":"api_key","name":"API Key","description":"Most internals are only readable by an Admin, so use a token that belongs to one.","fields":[{"id":"workspace","title":"Fibery Workspace","type":"text","description":"Workspace name, for example acme.fibery.io"},{"id":"token","title":"Fibery Workspace API Key","type":"password","description":"Create one in Settings → API Keys"}]}],"sources":[],"responsibleFor":{"userAuthentication":false,"dataProviding":false,"dataSynchronization":true,"dataImport":false,"automations":true},"actions":[{"action":"user.set_active","name":"Activate Or Deactivate User","description":"Turns a person's access on or off without removing them from the workspace.","args":[{"order":1,"id":"email","name":"Email","type":"text","required":true,"textTemplateSupported":true},{"order":2,"id":"active","name":"Active","type":"checkbox","description":"Off deactivates the person."}]},{"action":"group.add_member","name":"Add User To Access Group","description":"Adds a person to an access group. Group membership drives access, so this is a way to grant or revoke it from an automation.","args":[{"order":1,"id":"group_id","name":"Group","type":"list","datalist":true,"required":true,"textTemplateSupported":true},{"order":2,"id":"email","name":"Email","type":"text","required":true,"textTemplateSupported":true}]},{"action":"view.create","name":"Create Document Or Whiteboard","description":"Creates an empty document or whiteboard in a space. Data views (list, board, table and so on) are not created here, because they need a field-level configuration that cannot be guessed.","args":[{"order":1,"id":"name","name":"Name","type":"text","required":true,"textTemplateSupported":true},{"order":2,"id":"kind","name":"Kind","type":"single-select","options":[{"name":"Document"},{"name":"Whiteboard"}],"defaultValue":"Document"},{"order":3,"id":"space_id","name":"Space","type":"list","datalist":true,"required":true,"textTemplateSupported":true},{"order":4,"id":"folder_id","name":"Folder Id","type":"text","textTemplateSupported":true,"description":"Optional. Places the new view inside an existing folder."}]},{"action":"folder.create","name":"Create Folder","description":"Creates a folder in a space, optionally inside another folder.","args":[{"order":1,"id":"name","name":"Name","type":"text","required":true,"textTemplateSupported":true},{"order":2,"id":"space_id","name":"Space","type":"list","datalist":true,"required":true,"textTemplateSupported":true},{"order":3,"id":"parent_folder_id","name":"Parent Folder Id","type":"text","textTemplateSupported":true}]},{"action":"emoji.upsert","name":"Create Or Replace Custom Emoji","description":"Points an emoji alias at an image URL. If the alias already exists its image is replaced, so this is safe to run repeatedly.","args":[{"order":1,"id":"alias","name":"Alias","type":"text","required":true,"textTemplateSupported":true,"description":"Without colons, for example deploy-ok. Lowercase letters, digits, hyphens and underscores."},{"order":2,"id":"image_url","name":"Image URL","type":"text","required":true,"textTemplateSupported":true,"description":"Fibery downloads this itself, so it must be reachable publicly."}]},{"action":"space.create","name":"Create Space","description":"Creates an empty space and adds it to the sidebar. Useful for giving each new person a space of their own.","args":[{"order":1,"id":"name","name":"Name","type":"text","required":true,"textTemplateSupported":true},{"order":2,"id":"icon","name":"Icon","type":"text","textTemplateSupported":true,"description":"A named Fibery icon, for example atom."},{"order":3,"id":"color","name":"Color","type":"text","textTemplateSupported":true,"description":"Hex colour, for example #F7D130."}]},{"action":"emoji.delete","name":"Delete Custom Emoji","description":"Hides a custom emoji, which is what Fibery's own delete does, or removes it outright.","args":[{"order":1,"id":"alias","name":"Alias","type":"text","required":true,"textTemplateSupported":true},{"order":2,"id":"permanent","name":"Remove Permanently","type":"checkbox","description":"Off hides the emoji, matching Fibery's UI. On removes the record entirely."}]},{"action":"folder.delete","name":"Delete Folders","description":"Deletes folders by id.","args":[{"order":1,"id":"folder_ids","name":"Folder Ids","type":"textarea","required":true,"textTemplateSupported":true}]},{"action":"view.delete","name":"Delete Views","description":"Deletes views by id, along with any views nested inside them. Fibery keeps them recoverable for a while, but treat this as destructive.","args":[{"order":1,"id":"view_ids","name":"View Ids","type":"textarea","required":true,"textTemplateSupported":true,"description":"One per line, or comma separated."}]},{"action":"automation.set_enabled","name":"Enable Or Disable Automation","args":[{"order":1,"id":"automation_id","name":"Automation Id","type":"text","required":true,"textTemplateSupported":true},{"order":2,"id":"kind","name":"Kind","type":"single-select","options":[{"name":"Rule"},{"name":"Button"}],"defaultValue":"Rule"},{"order":3,"id":"enabled","name":"Enabled","type":"checkbox"}]},{"action":"user.invite","name":"Invite Users","description":"Invites people by email. Up to 7 per run, which is Fibery's own limit. Only an admin token can invite admins.","args":[{"order":1,"id":"emails","name":"Emails","type":"textarea","required":true,"textTemplateSupported":true,"description":"One per line, or comma separated."},{"order":2,"id":"role","name":"Role","type":"single-select","options":[{"name":"role/member"},{"name":"role/observer"},{"name":"role/guest"},{"name":"role/admin"}],"defaultValue":"role/member"}]},{"action":"space.move_to_trash","name":"Move Space To Trash","description":"Moves a space to the trash, where it can be restored. Deleting a space permanently is deliberately not available here.","args":[{"order":1,"id":"space_id","name":"Space","type":"list","datalist":true,"required":true,"textTemplateSupported":true,"description":"The space's id, as synced into the Space database."},{"order":2,"id":"confirm_name","name":"Confirm Name","type":"text","required":true,"textTemplateSupported":true,"description":"Type the space's name to confirm. This has to match, so a mistargeted automation cannot trash the wrong space."}]},{"action":"group.remove_member","name":"Remove User From Access Group","description":"Removes a person from an access group. Group membership drives access, so this is a way to grant or revoke it from an automation.","args":[{"order":1,"id":"group_id","name":"Group","type":"list","datalist":true,"required":true,"textTemplateSupported":true},{"order":2,"id":"email","name":"Email","type":"text","required":true,"textTemplateSupported":true}]},{"action":"sync.trigger","name":"Run Integration Sync","description":"Starts a sync for one integration, optionally forcing a full re-read rather than a delta.","args":[{"order":1,"id":"source_id","name":"Integration Id","type":"text","required":true,"textTemplateSupported":true,"description":"The id from the Integration database."},{"order":2,"id":"force_full_sync","name":"Force Full Sync","type":"checkbox","description":"Re-reads everything instead of only what changed."}]},{"action":"internals.patch","name":"Update Internal Item","description":"Sets fields on any internal item this integration can write - a space, view, folder, automation, user and so on. The same validation as editing the synced row directly.","args":[{"order":1,"id":"kind","name":"Kind","type":"list","datalist":true,"required":true,"textTemplateSupported":true},{"order":2,"id":"id","name":"Id","type":"text","required":true,"textTemplateSupported":true,"description":"The item's id, as synced into the matching database."},{"order":3,"id":"patch","name":"Fields","type":"textarea","required":true,"textTemplateSupported":true,"description":"A JSON object of field ids to values, for example {\"name\": \"Renamed\", \"icon\": \":rocket:\"}. Field ids are listed in the data model documentation."},{"order":4,"id":"allow_schema_rename","name":"Allow Renaming Databases And Fields","type":"checkbox","description":"Required to rename a database or a field, because that changes the workspace's API surface and can break formulas and scripts."}]}]}