Skip to content

Releases: btafoya/mixpost-api

v1.0.0 - Initial Stable Release

24 Oct 04:52

Choose a tag to compare

🎉 Mixpost REST API v1.0.0 - Initial Stable Release

Production-ready REST API extension for Mixpost - Enable powerful automation with n8n and external integrations!

📦 Installation

composer require btafoya/mixpost-api

Then publish the configuration (optional):

php artisan vendor:publish --tag=mixpost-api-config

📖 Full Documentation: README.md


✨ What's Included

🚀 Core API Endpoints

Authentication (Laravel Sanctum)

  • Token generation, revocation, and management
  • Multi-token support with granular permissions
  • Health check endpoint

Posts Management

  • Full CRUD operations
  • Schedule posts for future publishing
  • Publish immediately (30-second delay)
  • Duplicate posts with all relationships
  • Bulk delete operations
  • Filter by status, accounts, tags, dates
  • Platform-specific content versions

Media Handling

  • Upload files (images: jpg, jpeg, png, gif, webp; videos: mp4, mov, avi)
  • Download media from external URLs
  • Search and filter media library
  • Individual and bulk delete operations
  • Automatic thumbnail generation

Social Accounts

  • List connected accounts
  • View account details with provider info
  • Update account settings
  • Remove accounts

Tags & Organization

  • Create, read, update, delete tags
  • Assign tags to posts
  • Filter posts by tags

🔐 Security & Performance

  • ✅ Laravel Sanctum token-based authentication
  • ✅ Rate limiting (60 requests/minute, configurable)
  • ✅ HTTPS enforcement (production)
  • ✅ IP whitelisting support
  • ✅ Comprehensive input validation
  • ✅ Error message sanitization

🎨 Developer Experience

  • ✅ RESTful API design with ID-based routing
  • ✅ Consistent JSON response formats
  • ✅ Pagination with configurable limits
  • ✅ Comprehensive error handling
  • 100% test coverage (41/41 tests passing, 256 assertions)
  • ✅ Laravel Pint code style compliance
  • ✅ GitHub Actions CI/CD

📊 Technical Details

Test Coverage

  • Tests: 41/41 passing ✅
  • Assertions: 256
  • Coverage: 100%
  • PHP Versions: 8.2, 8.3

Dependencies

  • PHP: ^8.2
  • Laravel: ^10.47 | ^11.0
  • Laravel Sanctum: ^3.0 | ^4.0
  • Mixpost: ^1.0 (dev dependency)

Package Info

  • Namespace: Btafoya\MixpostApi
  • Type: Laravel Service Provider Package
  • License: MIT

🔄 What Changed from Pre-Release

Architecture Improvements

  • Migrated from UUID-based to ID-based routing (compatibility with Mixpost models)
  • Custom form requests extending Mixpost's validation
  • API Resources for consistent response transformation
  • Conditional image processing for test environment compatibility

Quality Achievements

  • 100% test coverage (up from initial 83%)
  • Laravel Pint code style compliance
  • GitHub Actions CI/CD passing all checks
  • Production-ready code quality

🚀 Quick Start

1. Install Package

composer require btafoya/mixpost-api

2. Create API Token

# Via your Laravel application
use App\Models\User;

$user = User::find(1);
$token = $user->createToken('n8n-automation')->plainTextToken;

3. Make API Request

curl -H "Authorization: Bearer YOUR_TOKEN" \
     -H "Accept: application/json" \
     https://your-app.com/api/mixpost/posts

4. Use with n8n

See n8n Integration Examples for workflow templates!


📋 API Endpoints

Authentication

  • POST /api/mixpost/auth/tokens - Generate token
  • GET /api/mixpost/auth/tokens - List tokens
  • DELETE /api/mixpost/auth/tokens/{id} - Revoke token
  • DELETE /api/mixpost/auth/tokens/current - Revoke current token
  • GET /api/mixpost/health - Health check

Posts (9 endpoints)

  • List, create, read, update, delete
  • Schedule, publish, duplicate
  • Bulk delete

Media (6 endpoints)

  • Upload, download from URL
  • List, search, delete
  • Bulk delete

Accounts (4 endpoints)

  • List, read, update, delete

Tags (4 endpoints)

  • Full CRUD operations

Total: 23+ production-ready endpoints


🔮 What's Next (Future Releases)

  • 📊 Reports & Analytics API
  • 📅 Calendar API for scheduled content
  • 🔧 System monitoring endpoints
  • 🪝 Webhook support
  • 📚 OpenAPI/Swagger documentation
  • 🔍 Advanced filtering

🙏 Acknowledgments

Built on top of the excellent Mixpost social media management platform.

Made with ❤️ by Brian Tafoya


📚 Resources


Ready for Production ✅ | 100% Test Coverage ✅ | n8n Compatible