Panduan lengkap penggunaan API sistem formulasi pakan ternak cerdas dengan algoritma AMPSO - dari registrasi hingga optimasi formula pakan yang sempurna!
Berikut adalah alur lengkap penggunaan sistem formulasi pakan dari registrasi hingga mendapatkan hasil optimasi
User harus mendaftar dan login terlebih dahulu untuk mengakses sistem formulasi pakan.
POST /api/auth/registerPOST /api/auth/login
{
"name": "Budi Peternak",
"email": "budi@example.com",
"password": "password123",
"phone": "081234567890",
"farm_type": "ayam_broiler"
}
Setelah login, user dapat mengakses dashboard untuk mengelola profile dan melihat riwayat formula yang pernah dibuat.
{
"user": {
"id": 1,
"name": "Budi Peternak",
"email": "budi@example.com",
"farm_type": "ayam_broiler",
"total_formulas": 5,
"last_login": "2024-10-06 08:30:00"
},
"recent_formulas": [...]
}
User dapat melihat daftar lengkap bahan pakan yang tersedia dalam database beserta kandungan nutrisi dan harga.
GET /api/ingredients
{
"success": true,
"data": [
{
"name": "Jagung giling kuning",
"price_per_kg": 8000,
"ME": 3320.0,
"protein": 8.9,
"fat": 4.0,
"fiber": 2.8
},
{
"name": "Bungkil kedelai",
"price_per_kg": 9000,
"ME": 2230.0,
"protein": 44.6,
"fat": 1.1
}
],
"total_ingredients": 28
}
User memilih bahan-bahan pakan yang tersedia dan ingin digunakan dalam formula optimasi.
{
"selected_ingredients": [
"Jagung giling kuning",
"Dedak (rice bran)",
"Bungkil kedelai",
"Fish meal (tepung ikan)",
"Bekatul",
"DCP",
"premix",
"L-Lysine HCl",
"DL-Methionine",
"NaCl"
]
}
User mengatur parameter produksi seperti target berat pakan, jenis ternak, dan standar nutrisi custom (opsional).
{
"target_weight": 300.0,
"animal_type": "ayam_layer",
"custom_standards": {
"PK %": ["min", 20.0],
"ME (Kkal/kg)": ["min", 2950.0],
"LK %": ["target", 7.5]
},
"include_cost_optimization": true
}
Sistem menjalankan algoritma AMPSO untuk menghasilkan formula pakan optimal dengan komposisi, nutrisi, dan analisis biaya lengkap.
POST /api/optimize
{
"success": true,
"target_weight_kg": 300.0,
"total_cost_per_kg": 5247.89,
"total_batch_cost": 1574367.0,
"composition_details": [
{
"ingredient_name": "Jagung giling kuning",
"percentage": 63.92,
"weight_kg": 191.76,
"cost_contribution": 862920.0
}
],
"nutrient_composition": {...},
"standards_compliance": {...}
}
Daftar lengkap endpoint yang tersedia dalam sistem formulasi pakan
/api/auth/register
Registrasi user baru
/api/auth/login
Login user
/api/auth/logout
Logout user
/api/user/profile
Data profile user
/api/user/profile
Update profile user
/api/user/formulas
Riwayat formula user
/api/ingredients
Daftar bahan pakan tersedia
/api/standards
Standar nutrisi default
/api/health
Status kesehatan API
/api/optimize
Optimasi formulasi pakan
/api/predict
Alias untuk /optimize
/api/formula/save
Simpan formula ke profile
Panduan singkat untuk memulai menggunakan API formulasi pakan dalam 5 langkah mudah
Daftar akun dan dapatkan token autentikasi untuk mengakses API.
curl -X POST https://api.feedformula.com/auth/register \
-H "Content-Type: application/json" \
-d '{
"name": "Nama Peternak",
"email": "email@example.com",
"password": "password123"
}'
Lihat daftar bahan pakan yang bisa digunakan untuk optimasi.
curl -X GET https://api.feedformula.com/ingredients \
-H "Authorization: Bearer YOUR_TOKEN"
Tentukan bahan pakan yang akan digunakan dan parameter target produksi.
{
"selected_ingredients": [
"Jagung giling kuning",
"Bungkil kedelai",
"Fish meal (tepung ikan)"
],
"target_weight": 300.0,
"animal_type": "ayam_broiler"
}
POST data ke endpoint optimasi untuk mendapatkan formula optimal.
curl -X POST https://api.feedformula.com/optimize \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d @formula_request.json
Dapatkan komposisi optimal, analisis nutrisi, dan perhitungan biaya.
{
"success": true,
"composition_details": [...],
"nutrient_composition": {...},
"total_cost_per_kg": 5247.89,
"standards_compliance": {...}
}
Sistem keamanan API menggunakan JWT token dengan validasi berlapis untuk melindungi data formula pakan Anda
Semua request ke API (kecuali endpoint publik) memerlukan JWT token yang diperoleh saat login. Token akan expire dalam 24 jam dan perlu di-refresh secara berkala.
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...
POST /api/auth/login
{
"email": "peternak@example.com",
"password": "password123"
}
{
"success": true,
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...",
"expires_in": 86400,
"user": {
"id": 1,
"name": "Peternak Sukses",
"email": "peternak@example.com"
}
}
GET /api/user/profile
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...
Format dan struktur response yang akan Anda terima dari berbagai endpoint API
{
"success": true,
"target_weight_kg": 300.0,
"total_cost_per_kg": 5247.89,
"total_batch_cost": 1574367.0,
"composition_details": [
{
"ingredient_name": "Jagung giling kuning",
"percentage": 63.92,
"weight_kg": 191.76,
"price_per_kg": 8000,
"total_cost": 1534080.0,
"nutrient_contribution": {
"ME": 2121.864,
"protein": 5.69,
"fat": 2.56
}
},
{
"ingredient_name": "Bungkil kedelai",
"percentage": 15.20,
"weight_kg": 45.60,
"price_per_kg": 9000,
"total_cost": 410400.0,
"nutrient_contribution": {
"ME": 338.96,
"protein": 6.78,
"fat": 0.17
}
}
],
"nutrient_composition": {
"ME (Kkal/kg)": {
"value": 2904.7656,
"unit": "kkal/kg",
"status": "✓",
"requirement": ">= 2900"
},
"PK %": {
"value": 18.71,
"unit": "%",
"status": "✓",
"requirement": ">= 18.7"
},
"LK %": {
"value": 7.24,
"unit": "%",
"status": "✓",
"requirement": "7.0 ± 0.5"
}
},
"standards_compliance": {
"total_passed": 8,
"total_checked": 10,
"compliance_rate": 80.0,
"failed_standards": [
"SK % (7.2% > 7.0%)",
"Ca % (0.68% < 0.72%)"
]
},
"optimization_info": {
"algorithm": "AMPSO",
"iterations": 127,
"convergence_time": "2.34s",
"feasible": true
},
"selected_ingredients": [
"Jagung giling kuning",
"Bungkil kedelai",
"Fish meal (tepung ikan)",
"DCP",
"premix"
]
}
{
"success": false,
"error": {
"code": "INSUFFICIENT_INGREDIENTS",
"message": "Minimal 3 bahan pakan diperlukan untuk optimasi",
"details": {
"provided_ingredients": 2,
"minimum_required": 3,
"suggestions": [
"Tambahkan minimal 1 bahan pakan lagi",
"Pilih dari daftar bahan yang tersedia di /ingredients"
]
}
},
"timestamp": "2024-10-06T10:30:00Z",
"request_id": "req_abc123xyz"
}
{
"success": true,
"data": [
{
"id": 1,
"name": "Jagung giling kuning",
"category": "cereal_grains",
"price_per_kg": 8000,
"currency": "IDR",
"nutrients": {
"ME": 3320.0,
"protein": 8.9,
"fat": 4.0,
"fiber": 2.8,
"calcium": 0.02,
"phosphorus": 0.28
},
"usage_limits": {
"min_percentage": 0.0,
"max_percentage": 70.0
},
"availability": "available"
},
{
"id": 2,
"name": "Bungkil kedelai",
"category": "protein_sources",
"price_per_kg": 9000,
"currency": "IDR",
"nutrients": {
"ME": 2230.0,
"protein": 44.6,
"fat": 1.1,
"fiber": 6.0,
"calcium": 0.24,
"phosphorus": 0.62
},
"usage_limits": {
"min_percentage": 0.0,
"max_percentage": 25.0
},
"availability": "available"
}
],
"total_ingredients": 28,
"categories": [
"cereal_grains",
"protein_sources",
"mineral_supplements",
"vitamin_premixes"
],
"last_updated": "2024-10-06T08:00:00Z"
}
Pertanyaan yang sering diajukan seputar implementasi dan penggunaan API
Proses optimasi AMPSO biasanya memakan waktu 2-5 detik. Set timeout HTTP client minimal 30 detik. Jika timeout terjadi, coba kurangi jumlah bahan pakan atau parameter custom yang kompleks.
curl --timeout 30 -X POST /api/optimize
Saat ini API menggunakan database bahan pakan yang sudah tersedia. Untuk kebutuhan bahan custom, silakan hubungi tim support untuk penambahan ke database utama.
Setiap response API menyertakan header rate limit information:
X-RateLimit-Limit: 60
X-RateLimit-Remaining:
45
X-RateLimit-Reset: 1633024800
Algoritma AMPSO menggunakan random seed yang dapat dikontrol. Untuk hasil deterministik, gunakan parameter "seed" yang sama pada setiap request. Tanpa seed, hasil bisa sedikit berbeda namun tetap optimal secara matematis.
API akan mengembalikan error jika nama bahan tidak ditemukan atau kombinasi bahan tidak feasible:
HTTP 400: {"error": "INGREDIENT_NOT_FOUND", "invalid_ingredients": ["Bahan X"]}
HTTP 422: {"error": "INFEASIBLE_CONSTRAINTS", "reason": "Tidak ada solusi yang memenuhi semua
batasan"}
Mulai integrasikan sistem formulasi pakan cerdas ke aplikasi Anda hari ini. Dapatkan akses API key dan dokumentasi lengkap secara gratis!
Integrasi API dalam hitungan menit dengan dokumentasi lengkap dan contoh kode.
Tim developer siap membantu implementasi dan troubleshooting kapan saja.
Monitor penggunaan API, performa, dan statistik melalui dashboard yang intuitive.