Files
our-claude-skills/custom-skills/04-ourdigital-research/code/references/ghost-api-config.md
Andrew Yim 0bc24d00b9 feat: Add OurDigital custom skills package (10 skills)
Complete implementation of OurDigital skills with dual-platform support
(Claude Desktop + Claude Code) following standardized structure.

Skills created:
- 01-ourdigital-brand-guide: Brand reference & style guidelines
- 02-ourdigital-blog: Korean blog drafts (blog.ourdigital.org)
- 03-ourdigital-journal: English essays (journal.ourdigital.org)
- 04-ourdigital-research: Research prompts & workflows
- 05-ourdigital-document: Notion-to-presentation pipeline
- 06-ourdigital-designer: Visual/image prompt generation
- 07-ourdigital-ad-manager: Ad copywriting & keyword research
- 08-ourdigital-trainer: Training materials & workshop planning
- 09-ourdigital-backoffice: Quotes, proposals, cost analysis
- 10-ourdigital-skill-creator: Meta skill for creating new skills

Features:
- YAML frontmatter with "ourdigital" or "our" prefix triggers
- Standardized directory structure (code/, desktop/, shared/, docs/)
- Shared environment setup (_ourdigital-shared/)
- Comprehensive reference documentation
- Cross-skill integration support

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 16:50:17 +07:00

75 lines
2.0 KiB
Markdown

# Ghost Admin API Configuration
## Configured Channels
| Channel | Domain | API Status |
|---------|--------|------------|
| blog.ourdigital.org | Korean main blog | ✅ Configured |
| journal.ourdigital.org | English journal | ✅ Configured |
| ourstory.day | Personal essays | ✅ Configured |
## API Endpoints
Base URL pattern: `https://{domain}/ghost/api/admin/`
### Authentication
Ghost Admin API uses JWT tokens generated from Admin API keys.
```
Admin API Key Format: {id}:{secret}
- id: 24 hex characters
- secret: 64 hex characters
```
### Key Endpoints
| Endpoint | Method | Purpose |
|----------|--------|---------|
| `/posts/` | POST | Create new post |
| `/posts/{id}/` | PUT | Update existing post |
| `/images/upload/` | POST | Upload image |
| `/tags/` | GET/POST | Manage tags |
### Post Creation Payload
```json
{
"posts": [{
"title": "Post Title",
"html": "<p>Content in HTML</p>",
"status": "draft",
"tags": [{"name": "tag1"}, {"name": "tag2"}],
"feature_image": "https://...",
"meta_title": "SEO Title",
"meta_description": "SEO Description",
"og_title": "Social Title",
"og_description": "Social Description",
"published_at": "2024-01-15T09:00:00.000Z"
}]
}
```
### Status Options
- `draft`: Save without publishing
- `published`: Publish immediately
- `scheduled`: Schedule for future (requires `published_at`)
## Future Automation Opportunities
### Zapier Integration Points
1. **Trigger**: New Notion page in "Working with AI" → Create Ghost draft
2. **Trigger**: Ghost post published → Share to social channels
3. **Trigger**: New MD file in iCloud folder → Create Ghost draft
### n8n Workflow Ideas
1. Research complete → Auto-create drafts across all relevant channels
2. Scheduled publishing queue management
3. Cross-posting between Ghost instances
## Security Notes
- API keys stored in environment variables
- Never expose keys in code or logs
- Rotate keys if compromised
- Use separate keys for different integrations