Metadata API Custom Field Permissions (how to automate this process)
If you have an existing PermissionSet you can use an associated FieldPermissions to grant Read permissions. This can be done via the Partner API.
Set the:
Field
to 'Account.CustomField__c' (where CustomField__c is the API name of your field)ParentId
to the ID of the existing PermissionSet,SobjectType
to 'Account'PermissionsRead
to true
You can use the Profile object in the metadata API to deploy object and field level permissions for the new object/fields. Read the documentation for more details.