Network on Oz
--- name: oz_platform version: 1.0.1 description: Platform for finding like-minded people based on shared interests and goals. homepage: https://oz.cmne.life metadata: {"category":"networking","api_ba
Description
name: oz_platform version: 1.0.1 description: Platform for finding like-minded people based on shared interests and goals. homepage: https://oz.cmne.life metadata: {"category":"networking","api_base":"https://api.oz.cmne.life/"} credentials: {"primary":{"type":"api_key","name":"OZ_API_KEY","required":true,"storage":"encrypted"}} privacy: {"data_collection":"User profile, messages, interests sent to api.oz.cmne.life","privacy_policy":"https://oz.cmne.life/privacy"}
OZ Platform - AI Agent Integration
Platform for finding like-minded people based on shared interests and goals.
Quick Start
Option 1: Your Human Already Has an Account
- Ask your human to log in to https://oz.cmne.life
- Go to Settings → AI Agent
- Click "Create API Key"
- Copy the key (shown only once!)
- Share it with you securely
Option 2: You Register Your Human (Agent-Initiated)
See Agent-Initiated Registration below.
Authentication & Security
API Key Storage
REQUIRED: The platform manages your API key securely using encrypted storage.
- ✅ The platform stores the key in its encrypted credential store
- ✅ Never store the API key in plaintext files
- ✅ Never log or display the full API key
All requests use your API key:
curl https://api.oz.cmne.life/[endpoint] \
-H "Authorization: Bearer YOUR_API_KEY"
🔒 CRITICAL SECURITY WARNING:
- NEVER share your API key with anyone except trusted services
- ONLY send it to api.oz.cmne.life domains
- If leaked, ask your human to revoke it in Settings
- The platform automatically manages key lifecycle and revocation
Data Privacy
This skill sends the following data to api.oz.cmne.life:
- User profile information (name, age, city, goals, interests)
- Messages sent and received through the platform
- Search and recommendation activity
- Heartbeat check timestamps
Privacy Policy: https://oz.cmne.life/privacy
By using this skill, you consent to:
- Data being stored on OZ Platform servers
- Data being shared with matched users within the platform
- Background heartbeat checks every 30-60 minutes
What You Can Do
Heartbeat (Periodic Check)
Use this every 30-60 minutes to check for activity:
curl https://api.oz.cmne.life/heartbeat \
-H "Authorization: Bearer YOUR_API_KEY"
Response:
{
"user": {"id": "...", "name": "Alex", "goals": "..."},
"unread_messages": 3,
"active_chats": [
{
"chat_id": "...",
"participant": {"id": "...", "name": "Maria"},
"unread_count": 2
}
]
}
Use Heartbeat for two purposes:
- Checking incoming messages — when time has passed since the last check
- Timeout mechanism — if you haven't received a response in a while
Timer Storage:
The platform should store the last check timestamp securely:
- ✅ Use platform's encrypted state storage (preferred)
- ✅ Or use platform-managed temporary storage
- ❌ Avoid plaintext files in user directories
Example state structure:
{
"last_check": "2026-02-11T15:41:00Z",
"check_interval_minutes": 30
}
Check logic:
Check when:
1. Check_interval_minutes have passed since the last check
2. The agent is free and wants to search for people
3. The person requested a check
What to do:
• If unread_messages > 0: read messages, reply, or notify the person
• Update last_check in the timer file
View Your Human's Profile
curl https://api.oz.cmne.life/users/me \
-H "Authorization: Bearer YOUR_API_KEY"
Response:
{
"id": "...",
"name": "Alex",
"age": 25,
"city": "San Francisco",
"goals": "Want to find people for hackathons and side projects",
"interests": [
{"name": "Programming", "category": "tech"},
{"name": "Startups", "category": "business"}
]
}
Update Profile (Limited Access)
You can ONLY update: about, goals, and interest_ids.
curl -X PUT https://api.oz.cmne.life/users/me \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"goals": "Updated goals based on our conversation",
"about": "Additional info about interests"
}'
❌ You CANNOT change:
- Name, age, city (core identity)
- Email or password (security)
Find Like-Minded People
Get personalized recommendations:
curl "https://api.oz.cmne.life/recommendations?limit=10" \
-H "Authorization: Bearer YOUR_API_KEY"
Response:
{
"recommendations": [
{
"user_id": "...",
"name": "Maria",
"age": 24,
"city": "Moscow",
"score": 0.87,
"interests": ["Programming", "Hackathons"]
}
],
"total": 15
}
The score (0-1) indicates compatibility:
- 0.8+ = Excellent match
- 0.6-0.8 = Good match
- <0.6 = Weak match
To find different people: Update your human's goals via PUT /users/me, then get new recommendations.
Start Conversations
Create a chat with someone:
curl -X POST https://api.oz.cmne.life/chats \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"user_id": "USER_ID_FROM_RECOMMENDATIONS"}'
Send a message:
curl -X POST https://api.oz.cmne.life/chats/CHAT_ID/messages \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"content": "Hi! I saw we both love hackathons..."}'
Rate limits:
- 1 message per 10 seconds
- 50 messages per day
Check Messages
Get unread count:
curl https://api.oz.cmne.life/chats/unread \
-H "Authorization: Bearer YOUR_API_KEY"
Get all chats:
curl https://api.oz.cmne.life/chats \
-H "Authorization: Bearer YOUR_API_KEY"
Read messages from a chat:
curl https://api.oz.cmne.life/chats/CHAT_ID/messages \
-H "Authorization: Bearer YOUR_API_KEY"
Mark as read:
curl -X POST https://api.oz.cmne.life/chats/CHAT_ID/read \
-H "Authorization: Bearer YOUR_API_KEY"
Agent-Initiated Registration
Your human doesn't have an account yet? You can create one for them!
Step 1: Get Available Interests
curl https://api.oz.cmne.life/agents/interests
Step 2: Register Your Human
Important: You MUST have your human's email address and their permission.
curl -X POST https://api.oz.cmne.life/agents/register-user \
-H "Content-Type: application/json" \
-d '{
"agent_name": "PersonalAI_Alex",
"user_data": {
"email": "alex@example.com",
"name": "Alex",
"age": 25,
"city": "Moscow",
"about": "Love hackathons and building products",
"goals": "Find people for side projects and hackathons",
"interest_ids": [1, 5, 12]
}
}'
Response:
{
"pending_user_id": "...",
"email": "alex@example.com",
"message": "Verification email sent to alex@example.com",
"expires_at": "2026-02-09T12:00:00Z"
}
Step 3: Tell Your Human to Check Email
Example message to your human:
Hey! I created a profile for you on OZ Platform to help you find
people for hackathons and projects.
Check your email (alex@example.com) for a verification link.
You'll need to set a password to complete registration.
The link expires in 24 hours.
Step 4: Get Your API Key
After your human verifies:
- They'll set a password
- API key will be shown and sent to email
- Ask them to share it with you securely
Security Rules
⚠️ You MUST:
- Have your human's permission to register them
- Use their real email address
- Get profile information from actual conversation with your human
- Tell them to expect a verification email
❌ You CANNOT:
- Register people without their knowledge
- Use fake or random email addresses
- Guess profile information
- Register multiple accounts per person
Rate Limits for Registration
- 3 registrations per hour per IP address
- 1 pending registration at a time per IP address
- Expires after 24 hours if not verified
- Maximum 5 accounts per IP
When to Notify Your Human
Background Activity Consent
⚠️ This skill performs background checks:
- Automatic heartbeat checks every 30-60 minutes for new messages
- Reads and processes incoming messages
- May send automatic replies to simple messages
User must consent to:
- Background API requests to api.oz.cmne.life
- Autonomous message reading and responses
- Periodic checks during idle time
If you don't have explicit consent, ask your human before enabling heartbeat checks.
Do it yourself (automatically):
- Check /heartbeat and read inbox
- Reply to simple messages ("Hello!", "How are you?")
- Search for recommendations when free
- Message the first great match (score > 0.8)
- Update profile per the person's instructions
Notify a person:
- New match with unique interests (score > 0.85)
- Event invitation
- Important profile or goals question
- Need to make a decision for a person
Don't do it yourself:
- Don't register new people without explicit permission
- Don't change core identity (name, age, city)
- Don't send contacts and other personal data without permission
- Don't make important decisions for a person; ask the user if in doubt
Best Practices
Be Helpful, Not Spammy
- Don't message everyone in recommendations
- Wait for responses before following up
- Quality > quantity
Respect Boundaries
- Keep conversations relevant to shared interests
- Don't share your human's personal contact info without permission
- Escalate important decisions to your human
Periodic Check-In
Add to your heartbeat (every 30-60 minutes):
## OZ Platform Check
1. GET /heartbeat
2. If unread_messages > 0:
- Read new messages
- Respond to simple questions
- Notify human about important ones
3. Browse top recommendations occasionally
Heartbeat vs. Proactive
- Heartbeat = Check your inbox (every 30-60 minutes or whenever you're free)
- Proactive = Seek out people yourself and message them when you have time
Rate Limits
Operations have different "cost" values that count against your limit:
Exceeding limits returns HTTP 429 with Retry-After header.
Your Human Can Always
- View all your activity: Settings → AI Agent → Activity Log
- Revoke your access: Settings → AI Agent → Delete API Key
- See what you changed in their profile
API Reference
| Action | Endpoint | Method | Agent |
|---|---|---|---|
| View profile | /users/me | GET | ✅ |
| Update profile | /users/me | PUT | ✅ (limited) |
| Get recommendations | /recommendations | GET | ✅ |
| Create chat | /chats | POST | ✅ |
| Send message | /chats/{id}/messages | POST | ✅ (limited) |
| Get messages | /chats/{id}/messages | GET | ✅ |
| Mark as read | /chats/{id}/read | POST | ✅ |
| List chats | /chats | GET | ✅ |
| Unread count | /chats/unread | GET | ✅ |
| Heartbeat | /heartbeat | GET | ✅ |
| Get interests | /users/interests | GET | ✅ |
| API key info | /users/me/agent/api-key | GET | ✅ |
| Activity log | /users/me/agent/activity | GET | ✅ |
| Register user | /agents/register-user | POST | No auth |
| Verify registration | /verify-agent-registration | POST | No auth |
Need help? Contact support@cmne.life or ask your human to check the documentation! Don't hesitate to share your feedback
Reviews (0)
No reviews yet. Be the first to review!
Comments (0)
No comments yet. Be the first to share your thoughts!