Before we dive into team authorization, a quick word about faynoSync.
It’s a dynamic update server that lets developers and teams manage app distribution, updates, platforms, architectures, and release channels — all in one place.
When your project starts growing, you’re no longer the only one deploying, testing, or publishing applications. Suddenly, you need to answer questions like:
Who can upload builds?
Who can edit applications?
How do I keep different teams isolated?
This is where faynoSync’s Team-Based Authorization comes into play. It provides a structured way to manage access across multiple users while keeping resources secure and isolated.
🔑 Key Concepts
Administrator
Manages their own team.
Can create, update, delete team users.
Full control over passwords and permissions.
Access limited to their team’s resources.
Team User
Belongs to a single administrator.
Cannot manage other users.
Works only with resources explicitly permitted.
Everything created belongs to their admin.
⚙️ Resource Permissions
Permissions are defined per resource type:
Applications
Channels
Platforms
Architectures
Available actions:
create
, edit
, delete
, upload
(apps only), download
(apps only).
🧩 Example: Managing Team Users via API
- Create a Team User
curl -X POST 'http://localhost:9000/user/create' \
-H 'Authorization: Bearer <jwt_token>' \
-H 'Content-Type: application/json' \
-d '{
"username": "teamuser1",
"password": "password123",
"permissions": {
"apps": {
"create": true,
"delete": false,
"edit": true,
"download": true,
"upload": false
}
// ... other permissions
}
}'
- Update Permissions
curl -X POST 'http://localhost:9000/user/update' \
-H 'Authorization: Bearer <jwt_token>' \
-H 'Content-Type: application/json' \
-d '{
"username": "teamuser1",
"password": "newpassword123",
"permissions": {
// ... updated permissions
}
}'
📊 Resource Isolation
Team users only see resources they’re allowed to use.
Each admin’s resources are completely isolated.
Admins can always see what their team creates.
Different teams can have resources with the same names.
🖥️ Using the Web Dashboard
For those who prefer UI over API, the faynoSync Dashboard makes team management straightforward.
Below you’ll also find a few screenshots to better visualize how these features look in action. 👇
Creating/removing team users.
Setting or auto-generating passwords.
Updating usernames and credentials.
- Assigning permissions with checkboxes.
Team users can log in to see their permissions and available resources at a glance.
✅ Conclusion
As your team scales, so does the need for granular access control.
faynoSync’s Team-Based Authorization helps you:
Keep teams isolated and secure.
Assign precise permissions for every resource.
Manage users both via API and Dashboard.
This way, you don’t just share your infrastructure — you control it.
How to Try faynoSync
Follow the Getting Started guide:
👉 https://faynosync.com/docs/getting-started
You can create your app using the REST API or the web dashboard:
⚡ API source code: https://github.com/ku9nov/faynoSync
📦 API Docs: https://faynosync.com/docs/api
🖥️ Dashboard UI: https://github.com/ku9nov/faynoSync-dashboard
🎬 Dashboard UI demo (video): https://faynosync.com/demo
Upload at least two versions of your application and check for updates with a simple request:
curl -X GET --location 'http://localhost:9000/checkVersion?app_name=appName&version=0.0.1&channel=stable&platform=linux&arch=amd64&owner=admin'
Or in Javascript:
import fetch from "node-fetch";
async function checkUpdate() {
const response = await fetch(
"http://localhost:9000/checkVersion?app_name=appName&version=0.0.1&channel=stable&platform=linux&arch=amd64&owner=admin"
);
const data = await response.json();
console.log(data);
}
checkUpdate();
This will return information about the latest version, available updates, and changelogs for your app.
If you try faynoSync, I’d love to hear your feedback — open an issue, suggest a feature, or star the project on GitHub. Your support keeps it alive and growing 💚
Top comments (0)