Skip to main content
ShingleAI uses a role-based access control system to manage what team members can see and do within your organization. This guide explains the permission model and how to configure access for your team.

Role Types

Every organization member has one of three roles:
RoleDescription
OwnerFull access to all organization resources and settings. Can manage billing, API keys, and delete the organization.
AdminFull access to business data. Can invite members and manage integrations. Cannot manage API keys or billing.
UserRead-only access to business data (contacts, messages, automations). Full access to their own user resources (files, preferences). Cannot access organization settings.
Each organization must have at least one Owner. Ownership can be transferred but not removed entirely.

Permission Model

ShingleAI’s permission system is built on three core concepts:

1. Actions

Every permission check evaluates one of three actions:
ActionHTTP MethodsDescription
readGETView resources
writePOST, PUT, PATCHCreate or modify resources
deleteDELETERemove resources

2. Resources

Resources are organized hierarchically using dot notation. For example:
contacts
contacts.emails
contacts.phones
contacts.tags

3. Inheritance

Permissions flow from parent to child resources. If you grant read access to contacts, that permission automatically applies to contacts.emails, contacts.phones, and all other child resources—unless explicitly overridden.

Role Permissions

Owner Permissions

Owners have unrestricted access to all resources:
Resource CategoryReadWriteDelete
Organization settingsYesYesYes
Members & invitesYesYesYes
API keysYesYesYes
Billing & subscriptionYesYesYes
All business dataYesYesYes

Admin Permissions

Admins have full data access with limited administrative capabilities:
Resource CategoryReadWriteDelete
Organization settingsYesNoNo
MembersYesNoNo
InvitesYesYesYes
ConnectionsYesNoNo
WorkflowsYesYesYes
API keysNoNoNo
Billing & subscriptionYesNoNo
Contacts & customersYesYesYes
MessagesYesYesYes
AutomationsYesYesYes
Files & foldersYesYesYes

User Permissions

Users have read-only access to organization data with full control over their own resources:
Resource CategoryReadWriteDelete
Organization settingsNoNoNo
MembersNoNoNo
API keysNoNoNo
Contacts & customersYesNoNo
MessagesYesNoNo
AutomationsYesNoNo
Own files & foldersYesYesNo
Own user profileYesYesNo

Resource Categories

The permission system covers these resource categories:

Contact Management

  • contacts - Contact records
  • contacts.emails, contacts.phones, contacts.addresses - Contact details
  • contacts.tags, contacts.notes - Organization and annotations

Customer & Business Management

  • customers - Customer relationships
  • businesses - Business entities
  • businesses.contacts, businesses.opportunities - Business associations

Communication

  • messages - All message types
  • messages.email, messages.sms - Channel-specific messages
  • messages.templates - Message templates

Organization

  • organization - Core organization settings
  • organization.members, organization.invites - Team management
  • organization.billing - Subscription and payment

Developer Resources

  • api_keys - API key management
  • mcp_keys - MCP key management
  • integrations - Third-party connections

Automations

  • automations - Workflow automations
  • automations.workflows, automations.triggers - Automation components

Files

  • files - File storage
  • folders - Folder organization

API Key Permissions

API keys support fine-grained permissions independent of user roles. When creating an API key, you can:
  • Grant specific resource access (e.g., read-only contacts)
  • Restrict to certain actions (e.g., read and write, no delete)
  • Scope to resource hierarchies (e.g., full messages access)
See API Key Management for details on creating and configuring API keys.

Best Practices

Principle of Least Privilege

Assign the minimum role needed for each team member:
  • Use User role for team members who only need to view data
  • Use Admin role for managers who need to edit data and invite members
  • Reserve Owner role for account administrators

Regular Access Reviews

Periodically review your organization’s members:
  • Remove inactive members promptly
  • Verify role assignments match current responsibilities
  • Check for any unused API keys

Separation of Duties

For sensitive operations, consider:
  • Limiting Owner role to 1-2 trusted administrators
  • Using separate API keys for different integrations
  • Enabling audit logging to track changes

Next Steps