Claude-skill-registry front-api
Reference for Front REST API integration. Use when working with Front API schemas, nullable fields, webhooks, or debugging Front SDK issues.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/front-api" ~/.claude/skills/majiayu000-claude-skill-registry-front-api && rm -rf "$T"
manifest:
skills/data/front-api/SKILL.mdsource content
Front API Skill
Reference for Front REST API integration.
OpenAPI Spec
The full OpenAPI spec is in
core-api.json (13k+ lines). Use it as the source of truth for:
- Request/response schemas
- Nullable fields
- Enum values
- Endpoint paths
Key Schemas
Message
- nullablerecipients[].name
- nullablerecipients[]._links.related.contact
- enum:recipients[].role
,from
,to
,cc
,bccreply-to
- nullable (null for inbound from external)author
- nullable (plain text version of body)text
Conversation
- nullableassignee
- nullable for some conversation typesrecipient
- can be empty arraytags
- nullablelast_message
- nullablescheduled_reminders
Recipient
{ "name": "string | null", "handle": "string (required)", "role": "from | to | cc | bcc | reply-to", "_links": { "related": { "contact": "string | null" } } }
Common Gotchas
- Webhooks send previews only - must fetch full data via API
- Many fields nullable - don't assume presence, use
in Zod.nullable()
- null when recipient has no contact record_links.related.contact
includesrole
- often forgotten in enumsreply-to
SDK Location
@skillrecordings/front-sdk - Zod schemas should match this spec exactly.
Useful Endpoints
- Full message with bodyGET /messages/{id}
- Conversation detailsGET /conversations/{id}
- Message historyGET /conversations/{id}/messages
- Create draft replyPOST /conversations/{id}/drafts
- Inbox detailsGET /inboxes/{id}