In most cases, permissions should remain as they are set by default. Custom permissions can often cause challenges in tracking platform operations available to different users.
By default, all users can make spreadsheet-backed forms or forms without an origin. Only a subset of users can create forms backed by an object type.
To create a form, you need permission to create resources in the filesystem folder in which the form will be located.
You also need specific permissions based on the backing data for the form:
fforms:form-definition:create-phonograph-formfforms:form-definition:create-fusion-formfforms:form-definition:create-no-origin-formThe following user groups have these permissions by default, which can be overridden in the Foundry Forms backend configuration:
fforms:form-definition:create-phonograph-form is given to the groups "fforms-admins" and "Platform Administrators".fforms:form-definition:create-fusion-form is given to all users.fforms:form-definition:create-no-origin-form is given to all users.By default, users only need Viewer permissions on the form they are filling to create new entries. Turn off Allow creation of new objects without read or write permissions in the settings panel in the Visual Editor to restrict the form so only users with permissions on the backing object type or spreadsheet can fill the form.
A user may not be able to create new entries for the following reasons:
By default, fforms:form-definition:view is given to users with the compass:view permission on the form. This can be overridden in the Foundry Forms backend configuration.
As with creating new entries, you need permission to view the form. In addition, you need permission to edit the backing origin, whether it is an object type or a spreadsheet.
The Allow creation of new objects without read or write permissions option does not affect editing existing entries. There is no current equivalent for editing entries. However, Foundry Forms previously supported this feature and some older forms may still allow editing entries without origin permissions to allow for backwards compatibility.
As with creating new entries, a published version must still exist, and you will need permission to upload files to any folders referenced in attachment fields.
To edit a form, you need Editor permission on the form. If you want to limit who can make changes to the version of the form that users see, you can do so by restricting who has permission to publish the form.
To edit an unpublished version of a form, you need fforms:form-definition:edit on the form. To edit a published version of a form, you additionally need all the permissions required to publish a version of that form.
By default fforms:form-definition:edit comes from compass:edit on the form. This can be overridden in the Foundry Forms backend configuration.
To publish a form, you need Editor permission on the form. If you want to restrict who can publish the form to only users with manage permissions on the form, you can move fforms:form-definition:manage from the compass:edit to compass:manage expansion in the backend configuration.
To publish a version of a form, you need fforms:form-definition:manage on the form. You additionally need:
compass:manage on any folders used in attachment fieldsBy default, fforms:form-definition:manage comes from compass:edit on the form. These options can be changed in the Foundry Forms backend configuration, but the requirement on attachment folders cannot be changed.
To create a new version of a form, you need Editor permission on the form. You will also need to belong to the group that can make either object-backed or spreadsheet-backed forms, depending on your use case.
To create a new version of a form, you need permission to create a form of that origin type.  You also need fforms:form-definition:create-new-version and permission to manage the origin of the form.
fforms:form-definition:create-new-version comes from compass:edit by default, but this can be changed in the backend configuration.
To change the response destination of a form you need:
To change the name of a version of a form, you need Editor permission on the form. If the form is the published version, then you will need permission to manage it and also manage its origin.
To manage a published form, you need fforms:form-definition:manage on it, which comes from compass:edit by default. This can be overridden in the backend configuration.
To delete a form, you need Editor permission on the form. You will need fforms:form-definition:manage, which comes from compass:edit by default. This can be changed in backend configuration.
To unpublish the published version of a form, you need Editor permission on the form. You will also need fforms:form-definition:manage, which comes from compass:edit by default. This can be changed in backend configuration.
This permission is required for several different operations. Different permissions are required based on what the form is backed by:
fforms:form-definition:create-phonograph-form: The form is backed by an object typefforms:form-origin:manage: The form is backed by a spreadsheetfforms:form-definition:create-phonograph-form is given to members of the "Platform Administrators" group. fforms:form-origin:manage is given to users with fusion:edit-document on the backing spreadsheet. These can be changed in the Foundry Forms backend configuration.