Share lead information with team members, partners, and external stakeholders.
Short URLs
Generate shareable short URLs for leads:
curl -X POST "https://api.adaptengine.com/api/v1/share" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"leadId": "lead_abc123"
}'
Response:
{
"ok": true,
"data": {
"shortCode": "abc123",
"url": "https://app.adaptengine.com/s/abc123",
"leadId": "lead_abc123",
"createdAt": 1706623200000,
"clickCount": 0
}
}
Resolving Short URLs
Get the lead from a short code:
curl "https://api.adaptengine.com/api/v1/share/resolve?code=abc123" \
-H "Authorization: Bearer YOUR_TOKEN"
Click Tracking
Short URLs track click counts automatically.
Guest Invitations
Invite external users to view specific leads:
curl -X POST "https://api.adaptengine.com/api/v1/leads/{leadId}/guest-invites" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"email": "partner@example.com",
"expiresAt": "2024-03-01T00:00:00Z",
"permissions": ["view"]
}'
Invite Structure
interface GuestInvite {
id: string;
leadId: string;
email: string;
permissions: Permission[];
invitedBy: string;
invitedAt: number;
expiresAt: number | null;
acceptedAt: number | null;
revokedAt: number | null;
}
type Permission = 'view' | 'comment';
Managing Invites
# List invites for a lead
curl "https://api.adaptengine.com/api/v1/leads/{leadId}/guest-invites" \
-H "Authorization: Bearer YOUR_TOKEN"
# Revoke an invite
curl -X DELETE "https://api.adaptengine.com/api/v1/guest-invites/{inviteId}" \
-H "Authorization: Bearer YOUR_TOKEN"
Public Lead Viewer
Guests access leads via a read-only public viewer that shows:
- Project overview
- Key details
- Timeline
- Limited contact information
Sensitive information like strategic scores and internal notes are hidden from guests.
URL Preview
Generate preview metadata for shared URLs:
curl "https://api.adaptengine.com/api/v1/share/preview?leadId=lead_abc123" \
-H "Authorization: Bearer YOUR_TOKEN"
Response:
{
"ok": true,
"data": {
"title": "Acme Tower Development",
"description": "Mixed-use development in downtown...",
"image": "https://...",
"url": "https://app.adaptengine.com/s/abc123"
}
}
Access Control
| Access Type | Description |
|---|
| Team member | Full access based on org role |
| Guest (view) | Read-only, limited fields |
| Guest (comment) | Read + add comments |
| Public link | Anonymous, very limited view |
Best Practices
Use guest invitations for partners who need ongoing access. Use short URLs for quick one-time shares.
Always set expiration dates on guest invitations for security.
API Endpoints
| Method | Endpoint | Description |
|---|
POST | /api/v1/share | Create short URL |
GET | /api/v1/share/resolve | Resolve short code |
GET | /api/v1/share/preview | Get preview metadata |
GET | /api/v1/leads/{leadId}/guest-invites | List invites |
POST | /api/v1/leads/{leadId}/guest-invites | Create invite |
DELETE | /api/v1/guest-invites/{id} | Revoke invite |