Projects & Settings
Manage projects, team members, credentials, API keys, and organization settings
Projects & Settings
Fugoku organizes resources into Projects within an Organization. Projects isolate billing, resources, and access control. Settings control team access, credentials, API keys, and organization-level configuration.
Access projects at: console.fugoku.com/projects Access settings at: console.fugoku.com/settings
Projects
Projects are the primary isolation boundary for resources, billing, and access control.
Project Structure
Organization
├── Project: production
│ ├── Resources (servers, volumes, networks, etc.)
│ ├── Members (team + roles)
│ ├── Billing (usage, invoices, limits)
│ └── Settings (credentials, API keys, providers)
├── Project: staging
│ └── ...
└── Project: development
└── ...Creating a Project
Console:
- Click Projects dropdown (top-left) → Create Project
- Name:
production - Description: Optional
- Billing: Select payment method / spending limit
- Click Create
CLI:
fugoku projects create \
--name production \
--description "Production workloads" \
--billing-limit 5000Switching Projects
Console: Click project name (top-left) → Select project
CLI:
fugoku projects use production
# or
export FUGOKU_PROJECT=productionProject Settings
| Setting | Description |
|---|---|
| Name | Display name |
| Description | Internal description |
| Billing limit | Monthly spend cap (optional) |
| Default region | Default region for new resources |
| Default network | Default private network |
| Feature flags | Enable/disable beta features |
Team Members & Roles
Control access with Role-Based Access Control (RBAC).
Default Roles
| Role | Permissions | Use Case |
|---|---|---|
| Owner | Full access + billing + project deletion | Project creator |
| Admin | Full resource access + member management | Team leads |
| Developer | Read/write resources, no member management | Engineers |
| Viewer | Read-only access | Stakeholders, auditors |
| Billing Admin | Billing access only | Finance team |
Custom Roles
Create fine-grained roles:
Console: Project Settings → Members → Roles → Create Role
CLI:
fugoku projects role create \
--project production \
--name "db-admin" \
--permissions "databases:*" "backups:*" "snapshots:*"Managing Members
Add Member:
fugoku projects member add \
--project production \
--email alice@company.com \
--role developerUpdate Role:
fugoku projects member update \
--project production \
--member alice@company.com \
--role adminRemove Member:
fugoku projects member remove \
--project production \
--member alice@company.com \
--confirmInvitation Flow
- Invite sent — Email with magic link
- Accept — User clicks link, signs in (or creates account)
- Provision — User added to project with assigned role
- Notify — Project owners notified
Resend Invitation:
fugoku projects invite resend \
--project production \
--invite-id invite-abc123Service Accounts
Create API-only identities for automation:
# Create service account
fugoku projects service-account create \
--project production \
--name ci-cd \
--role developer \
--description "GitHub Actions deployments"
# Get API key
fugoku projects service-account keys create \
--project production \
--service-account ci-cd \
--name github-actionsAPI Keys
Manage programmatic access to the Fugoku API.
Key Types
| Type | Prefix | Use Case |
|---|---|---|
| Live | fk_live_ | Production workloads |
| Test | fk_test_ | Development, CI/CD |
Create API Key
Console: Settings → API Keys → Create Key
CLI:
fugoku api-keys create \
--name github-actions \
--type live \
--project production \
--permissions "servers:*" "volumes:*" "networks:read"Key Scopes
| Scope | Resources |
|---|---|
servers:* | Full server management |
servers:read | Read-only server access |
volumes:* | Full volume management |
networks:* | Network management |
databases:* | Database management |
billing:* | Billing access |
iam:* | Member/role management |
admin:* | Project admin |
Key Rotation
# Rotate key (creates new, revokes old after grace period)
fugoku api-keys rotate \
--key fk_live_abc123 \
--grace-period 24h
# List keys
fugoku api-keys list
# Revoke immediately
fugoku api-keys revoke fk_live_abc123 --confirmBest Practices
- Use test keys in CI/CD, live keys only in production
- Scope narrowly — Grant minimum required permissions
- Rotate quarterly — Automate with CI/CD
- Monitor usage — Check last used timestamp
- Revoke on offboarding — Immediate revocation
Credentials
Manage cloud provider credentials for multi-cloud deployments.
Supported Providers
| Provider | Credentials Required | Console | CLI |
|---|---|---|---|
| Latitude.sh | API token, Personal Access Token | ✓ | ✓ |
| SkyPilot | SSH key, cluster config | ✓ | ✓ |
| GCP | Service account JSON | ✓ | ✓ |
| AMD | API key, client secret | ✓ | ✓ |
| OpenStack | Username, password, auth URL | ✓ | ✓ |
Add Credentials
Console: Settings → Credentials → Add Credential
CLI:
# Latitude.sh
fugoku credentials create \
--name latitude-prod \
--provider latitude \
--api-token $LATITUDE_TOKEN
# GCP
fugoku credentials create \
--name gcp-prod \
--provider gcp \
--service-account-json @gcp-sa.jsonCredential Encryption
All credentials encrypted at rest with AES-256-GCM:
- Key: Per-project encryption key (rotated quarterly)
- Access: Only decrypted at runtime for provider API calls
- Audit: All access logged in Audit Logs
Using Credentials
When creating resources, specify provider:
fugoku servers create \
--name bare-metal-1 \
--provider latitude \
--credential latitude-prod \
--plan m4.metal.small \
--region ashburn-1Billing Settings
Spending Limits
Set monthly spending caps:
Console: Settings → Billing → Spending Limit
CLI:
fugoku billing set-limit --project production --amount 5000Behavior when limit reached:
- Email notification at 80%, 100%
- Optional: Auto-stop instances
- New resource creation blocked
Payment Methods
| Method | Setup | Notes |
|---|---|---|
| Credit/Debit Card | Console → Billing → Payment Methods | Instant |
| PayPal | Console → Billing → Payment Methods | Instant |
| Bank Transfer | Contact enterprise@fugoku.com | $500+/mo accounts |
Invoices & Tax
Invoice details:
- Issued: 1st of month for previous month
- Due: Net 7 days
- Format: PDF + CSV
- Tax: VAT (EU), Sales tax (US), none (Nigeria)
VAT ID:
Console → Settings → Billing → Tax Info → Add VAT IDProject Providers
Configure cloud providers for multi-cloud deployments.
Adding a Provider
Console: Project Settings → Providers → Add Provider
CLI:
fugoku providers add \
--project production \
--provider latitude \
--credential latitude-prod \
--regions ashburn-1,chicago-1,dallas-1Provider-Specific Config
| Provider | Config Options |
|---|---|
| Latitude.sh | API token, default region, SSH keys |
| SkyPilot | SSH key, cluster config, GPU defaults |
| GCP | Service account, project ID, default region |
| AMD | API key, client secret, region |
| OpenStack | Auth URL, username, password, project ID |
Provider Health
Monitor provider connectivity:
fugoku providers health latitude-prod
# Output: healthy, last_check: 2024-01-15T14:30:00ZSettings Pages
Profile (/settings/profile)
- Name, email, avatar
- Password, 2FA (TOTP, WebAuthn)
- Notification preferences (email, Slack, webhook)
- Language, timezone
Credentials (/settings/credentials)
- Cloud provider credentials (see above)
- SSH keys management
- API keys management
Members (/settings/members)
- Team members list
- Role management
- Invitations
- Service accounts
Tokens (/settings/tokens)
- API keys (live/test)
- Service accounts
- Token rotation
Billing (/settings/billing)
- Payment methods
- Invoices
- Spending limits
- Usage alerts
- Tax info (VAT ID)
Project Settings (/settings/project)
- Project name/description
- Billing limits
- Default region/network
- Feature flags
KYC (/settings/kyc)
- Identity verification
- Business verification
- Document upload
Organization Settings (Admin Only)
Available to Organization Owners:
Organization Profile
- Name, logo, domain
- Support email, security email
Billing Consolidation
- Single invoice for all projects
- Centralized payment method
- Usage aggregation across projects
Committed Use Discounts
| Monthly Spend | Discount |
|---|---|
| $5,000/mo | 10% |
| $10,000/mo | 15% |
| $25,000/mo | 20% |
Audit & Compliance
- Organization-wide audit log
- Compliance reports (SOC 2, HIPAA, GDPR)
- Data residency controls
Security Policies
- Enforce 2FA for all members
- Session timeout policies
- IP allowlists for console access
- API key rotation enforcement
API Reference
Projects
# Create
POST /v1/projects { name, description, billing_limit }
# List
GET /v1/projects
# Get
GET /v1/projects/{id}
# Update
PATCH /v1/projects/{id} { name, description, billing_limit }
# Delete
DELETE /v1/projects/{id}Members
# Add
POST /v1/projects/{id}/members { email, role }
# List
GET /v1/projects/{id}/members
# Update role
PATCH /v1/projects/{id}/members/{user_id} { role }
# Remove
DELETE /v1/projects/{id}/members/{user_id}Roles
POST /v1/projects/{id}/roles { name, permissions[] }
GET /v1/projects/{id}/roles
PATCH /v1/projects/{id}/roles/{id} { permissions[] }
DELETE /v1/projects/{id}/roles/{id}API Keys
POST /v1/api-keys { name, type, project_id, permissions[] }
GET /v1/api-keys
POST /v1/api-keys/{id}/rotate { grace_period_hours }
DELETE /v1/api-keys/{id}Credentials
POST /v1/credentials { name, provider, credentials_json }
GET /v1/credentials
DELETE /v1/credentials/{id}Providers
POST /v1/providers { project_id, provider, credential_id, regions[] }
GET /v1/providers?project_id={id}
DELETE /v1/providers/{id}Best Practices
- Separate projects by environment — prod, staging, dev
- Use custom roles — Principle of least privilege
- Rotate API keys — Quarterly rotation, automated
- Scope credentials — Per-project, least privilege
- Enable 2FA — Required for all owners/admins
- Set spending limits — Prevent surprise bills
- Monitor usage — Set alerts at 50%, 80%, 100%
- Audit regularly — Quarterly access reviews
- Document credentials — Internal wiki for credential purpose
Getting Help
- Documentation: docs.fugoku.com/projects
- Support: support@fugoku.com
- Security: security@fugoku.com
- Billing: billing@fugoku.com
- Status: status.fugoku.com
Next Steps: