Organization Setup for Inference Providers
This guide covers advanced organization configuration for Inference Providers, including settings optimized for serving members at scale.
Organization Types
When setting up your organization, consider your provider type:
| Provider Type | Characteristics | Recommended Settings |
|---|---|---|
| Cloud Provider | External customers, revenue-focused | Strict limits, member-pays default |
| Enterprise IT | Internal teams, cost allocation | Org-pays, department limits |
| Research Institution | Grants, students, labs | Mixed billing, usage reports |
| Startup | Small team, shared resources | Org-pays, minimal limits |
Core Settings
General Configuration
Navigate to Organization > Settings to configure:
| Setting | Description | Provider Recommendation |
|---|---|---|
| Name | Display name | Clear, professional |
| Description | Purpose/services | What you provide |
| Billing Email | Invoice recipient | Finance team email |
| Website | Your site | Helps with trust |
Member Settings
Control how members join and interact:
| Setting | Options | When to Use |
|---|---|---|
| Allow Join Requests | On/Off | On for open enrollment |
| Auto-Approve Requests | On/Off | On for trusted domains |
| Require Approval | On/Off | On for controlled access |
| Member Limit | Number | Based on your plan |
Domain-Based Auto-Approval
Automatically approve members from specific domains:
{
"auto_approve_domains": [
"acme.com",
"acme-research.edu"
]
}API Configuration
Rate Limits
Set organization-wide rate limits:
| Limit Type | Default | Provider Recommendation |
|---|---|---|
| Requests/minute | 60 | 100-500 for providers |
| Tokens/minute | 100,000 | Based on provider limits |
| Concurrent requests | 10 | 50-100 for providers |
Via API
curl -X PUT https://api.langmart.ai/api/organizations/<org_id> \
-H "Authorization: Bearer <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"rate_limit_requests_per_minute": 200,
"rate_limit_tokens_per_minute": 500000,
"max_concurrent_requests": 50
}'Spending Controls
Organization-Level Limits
Set overall spending caps to prevent unexpected costs:
| Limit | Purpose | Example |
|---|---|---|
| Monthly Limit | Total org spending | $5,000/month |
| Daily Limit | Spike protection | $500/day |
| Alert Threshold | Early warning | 80% of limit |
curl -X PUT https://api.langmart.ai/api/organizations/<org_id> \
-H "Authorization: Bearer <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"spending_limit_monthly": 5000.00,
"spending_limit_daily": 500.00,
"spending_alert_threshold": 0.8
}'Default Member Limits
New members automatically receive these limits:
curl -X PUT https://api.langmart.ai/api/organizations/<org_id> \
-H "Authorization: Bearer <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"default_member_monthly_limit": 100.00,
"default_member_daily_limit": 10.00
}'Limit Recommendations by Provider Type
| Provider Type | Monthly/Member | Daily/Member | Org Monthly |
|---|---|---|---|
| Cloud Provider | $50 | $10 | $10,000 |
| Enterprise IT | $200 | $25 | $5,000 |
| Research | $100 | $15 | $2,000 |
| Startup | $500 | $50 | $1,000 |
Security Settings
PII Detection
Enable automatic detection of sensitive data:
{
"pii_detection_enabled": true,
"pii_detection_mode": "warn", // or "block"
"pii_types": ["email", "phone", "ssn", "credit_card"]
}| Mode | Behavior |
|---|---|
| warn | Log PII events, allow request |
| block | Reject requests containing PII |
KeyVault Settings
Configure automatic API key protection:
{
"keyvault_enabled": true,
"keyvault_auto_restore": true
}Audit Logging
Enable comprehensive audit trails:
| Log Type | Description | Retention |
|---|---|---|
| Request Logs | All API requests | 90 days |
| Audit Logs | Admin actions | 1 year |
| PII Events | Detected sensitive data | 90 days |
Access Control
Role Definitions
Define what each role can do:
| Role | Members | Connections | Billing | Settings |
|---|---|---|---|---|
| Member | Self | View | Self | None |
| Admin | Manage | Manage | View | Limited |
| Owner | Full | Full | Full | Full |
Custom Roles (Enterprise)
Create custom roles for specific needs:
{
"name": "Department Admin",
"permissions": [
"members:read",
"members:invite",
"usage:read",
"connections:read"
]
}Multi-Department Setup
For organizations with multiple departments or teams:
Department Tags
Tag members by department for reporting:
curl -X PUT https://api.langmart.ai/api/organizations/<org_id>/members/<user_id> \
-H "Authorization: Bearer <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"metadata": {
"department": "Engineering",
"cost_center": "ENG-001"
}
}'Department-Specific Limits
Set different limits per department:
# Engineering: Higher limits
curl -X PUT https://api.langmart.ai/api/organizations/<org_id>/spending-limits \
-H "Authorization: Bearer <your-api-key>" \
-H "Content-Type: application/json" \
-d '{
"department": "Engineering",
"monthly_limit": 500.00,
"daily_limit": 50.00
}'Model Access Configuration
Model Categories
Organize available models by category:
| Category | Models | Billing Mode |
|---|---|---|
| Production | GPT-4o, Claude 3.5 | Org-pays |
| Development | GPT-3.5, Llama | Org-pays |
| Experimental | New models | Member-pays |
Model Restrictions
Limit access to specific models:
{
"allowed_models": [
"openai/gpt-4o",
"openai/gpt-3.5-turbo",
"anthropic/claude-3.5-sonnet"
],
"blocked_models": [
"openai/o1-preview" // Too expensive
]
}Integration Settings
Webhook Configuration
Receive notifications for key events:
{
"webhooks": [
{
"url": "https://your-server.com/webhook",
"events": [
"member.joined",
"member.left",
"spending_limit.reached",
"connection.failed"
],
"secret": "your-webhook-secret"
}
]
}SSO Integration (Enterprise)
Configure Single Sign-On:
| Provider | Configuration |
|---|---|
| Google Workspace | OAuth 2.0 |
| Microsoft Entra | SAML 2.0 |
| Okta | SAML 2.0 / OIDC |
Monitoring & Alerts
Alert Configuration
Set up alerts for key metrics:
| Alert Type | Trigger | Action |
|---|---|---|
| Spending Alert | 80% of limit | Email admin |
| Usage Spike | 200% normal | Email + Slack |
| Error Rate | >5% failures | Page on-call |
Dashboard Customization
Configure what admins see on the dashboard:
- Real-time usage
- Cost by model
- Top users
- Error rates
Backup & Export
Data Export
Export organization data:
# Export usage data
curl -X GET "https://api.langmart.ai/api/organizations/<org_id>/export/usage?format=csv&start_date=2024-01-01" \
-H "Authorization: Bearer <your-api-key>"
# Export member list
curl -X GET "https://api.langmart.ai/api/organizations/<org_id>/export/members?format=csv" \
-H "Authorization: Bearer <your-api-key>"Audit Log Export
Export audit logs for compliance:
curl -X GET "https://api.langmart.ai/api/admin/audit-logs/export?org_id=<org_id>&format=json" \
-H "Authorization: Bearer <your-api-key>"Best Practices
For Cloud Providers
- Start with member-pays to manage risk
- Set conservative initial limits
- Monitor usage patterns before increasing
- Use connection pools for reliability
For Enterprise IT
- Map departments to cost centers
- Enable PII detection
- Set up SSO integration
- Configure audit logging
For Research Institutions
- Track usage by grant/project
- Set per-project limits
- Enable usage reports
- Configure auto-approval for .edu domains
Troubleshooting
Members Not Seeing Models
- Verify connection scope is "organization"
- Check member is active (not pending)
- Verify model is not in blocked list
- Check member hasn't exceeded limits
High Costs
- Review top users in usage dashboard
- Check for runaway automation
- Implement stricter daily limits
- Consider member-pays for expensive models
Performance Issues
- Check rate limits aren't too restrictive
- Verify connection pool is configured
- Monitor provider status pages
- Review error logs for patterns
Next Steps
- Member Management - Managing users
- Billing Models - Billing configuration
- Connection Pools - High availability
- Usage Analytics - Monitoring